DBGrid相关技术整理
DBGrid相关技术整理;
注:对于DBGrid相关属性、方法的学习融入到技术整理过程中
一,多选
设置属性:
Options->dgMultiSelect = True;
->dgRowSelect = True;
应用属性:
SelectedRows;
操作方法:
-Ctrl + Mouse Clicks
-Shift + Arrow Keys
For example:
1,取得所选行某个字段的值的合计:
procedure TForm1.btnDoSumClick(Sender: TObject);
var
i: Integer;
sum: Single;
begin
if DBGrid1.SelectedRows.Count > 0 then
begin
sum := 0;
with DBGrid1.DataSource.DataSet do
begin
for i := 0 to DBGrid1.SelectedRows.Count - 1 do
begin
GotoBookmard(Pointer(DBGrid1.SelectedRows.Items[i]));
sum := sum + AdoQuery1.FieldByName('Size').asfloat;
end;
end;
edtSizeSum.Text := FloattoStr(sum);
end;
end;
//用edtSizeSum来接收计算来的合计值
2,全选DBGrid:
procedure DBGridSelectAll(AGrid: TDBGrid) ;
begin
AGrid.SelectedRows.Clear;
with AGrid.DataSource.DataSet do
begin
DisableControls;
First;
try
while not EOF do
begin
AGrid.SelectedRows.CurrentRowSelected := True;
Next;
end;
finally
EnableControls;
end;
end;
end;
深入了解:
1,SelectedRows:
The TDBGrid component keeps all the selections as Bookmarks in a TStringList,
and all the Bookmarks must be converted to a Pointer (what they really are) before using it.
&
The SelectedRows property is an object of type TBookmarkList.
We can use the SelectedRows property to, for example:
--get the number of rows selected,
--clear the selection(unselect),
--delete all the selected records,
--check whether a particular record is selected.
2,运行时设置DBGrid的多选属性
DBGrid1.Options := DBGrid1.Options + [dgMultiSelect];
//以上部分内容取自http://delphi.about.com/od/usedbvcl/l/aa032503a.htm
二,加入其它控件
http://delphi.about.com/od/usedbvcl/l/aa082003a.htm
http://delphi.about.com/od/usedbvcl/l/aa082003a.htm
三,颜色设置
http://delphi.about.com/od/usedbvcl/l/aa031699.htm
DBGrid相关技术整理的更多相关文章
- 初识-Android之智能短信项目相关技术整理
标签页切换采用传统的TabHost: 采用TabActivty实现TabHost. 效果图-后补: 相关技术详解推荐: http://blog.csdn.net/zhouli_05/article/d ...
- ASP.NET相关技术整理
- 转:基于IOS上MDM技术相关资料整理及汇总
一.MDM相关知识: MDM (Mobile Device Management ),即移动设备管理.在21世纪的今天,数据是企业宝贵的资产,安全问题更是重中之重,在移动互联网时代,员工个人的设备接入 ...
- 基于IOS上MDM技术相关资料整理及汇总
(转自:http://www.mbaike.net/special/1542.html) 一.MDM相关知识:MDM (Mobile Device Management ),即移动设备管理.在21世纪 ...
- C#进程间通讯技术-整理。
原文:C#进程间通讯技术-整理. 扩展阅读:http://www.cnblogs.com/joye-shen/archive/2012/06/16/2551864.html 一.进程间通讯的方式 1) ...
- j2e应用相关技术
j2e应用相关技术 轻量级j2e应用以传统的jsp作为变现层技术,以一系列开源框架作为MVC层,中间件,持久层解决方案,并将这些开源框架有机组合在一起,使得j2e具有高度的可扩展性,可维护性. ser ...
- BAT 前端开发面经 —— 吐血总结 前端相关片段整理——持续更新 前端基础精简总结 Web Storage You don't know js
BAT 前端开发面经 —— 吐血总结 目录 1. Tencent 2. 阿里 3. 百度 更好阅读,请移步这里 聊之前 最近暑期实习招聘已经开始,个人目前参加了阿里的内推及腾讯和百度的实习生招聘, ...
- 关于Web开发里并发、同步、异步以及事件驱动编程的相关技术
一.开篇语 我的上篇文章<关于如何提供Web服务端并发效率的异步编程技术>又成为了博客园里“编辑推荐”的文章,这是对我写博客很大的鼓励,也许是被推荐的原因很多童鞋在这篇文章里发表了评论,有 ...
- 【原】http缓存与cdn相关技术
摘要:最近要做这个主题的组内分享,所以准备了一个星期,查了比较多的资料.准备的过程虽然很烦很耗时间,不过因为需要查很多的资料,因此整个过程下来,对这方面的知识影响更加深刻.来来来,接下来总结总结 一 ...
随机推荐
- Scala学习笔记(三)—— 方法和函数
1. 方法 方法使用 def 定义: def 方法名(参数名:参数列表,…) :返回值类型 = { 方法结构体 } scala> def add(x : Int ,y : Int):Int = ...
- [NOIP2017]列队(树状数组)
定义第i行为所有的点(i,j),0<j<m 可以发现,每一行是相对独立的,每一次操作只会影响到当前行和最后一列 考虑每一行和最后一列各开一个树状数组,但这样显然会爆空间 实际上,对于没有离 ...
- 前端chrome调试技巧
待更新:http://blog.csdn.net/xueer767/article/details/65936204?locationNum=8&fps=1
- BZOJ1083_繁忙的都市_KEY
题目传送门 裸的最小生成树. code: /************************************************************** Problem: 1083 U ...
- productFlavors 差异打包问题
差异化打包: 1.dependencies compile 是不可以放到差异化的productFlavors里面的. 会报错: Error:(69, 0) Could not find method ...
- 基于Docker的UI自动化初探
本文来自网易云社区 前言 一直以来,项目迭代的时间都是比较紧张的,开发加班加点coding,测试加班加点提bug.都说"时间像海绵里的水,挤挤总会有的"(当然这里的"挤挤 ...
- 面试遇到的订单表sql的解决方案
对于以下需求:用户表:users (user_id int)订单表:order_tb(user_id int, or_time date, or_money double)求以下用户:一月下过单, ...
- 【转】APP推广什么是cpa,cps,cpm
转载自:http://www.apptg.cn 经常做做APP推广和做运营的同学对于cpa,cps,cpm,cpc这些名词肯定不会陌生,也基本都知道其表示的含义,但是对于新手来说,这几个词的含义还是不 ...
- 204. Singleton
Description Singleton is a most widely used design pattern. If a class has and only has one instance ...
- 数据库Mysql的学习(二)-数据类型和创建
数据类型:数据列,存储过程参数,表达式和局部变量的数据特征. 整形: tinyint:一个字节,-128到127:2的7次方 smallint:两个字节,-32768到32767:2的15次方 med ...