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相关技术整理的更多相关文章

  1. 初识-Android之智能短信项目相关技术整理

    标签页切换采用传统的TabHost: 采用TabActivty实现TabHost. 效果图-后补: 相关技术详解推荐: http://blog.csdn.net/zhouli_05/article/d ...

  2. ASP.NET相关技术整理

  3. 转:基于IOS上MDM技术相关资料整理及汇总

    一.MDM相关知识: MDM (Mobile Device Management ),即移动设备管理.在21世纪的今天,数据是企业宝贵的资产,安全问题更是重中之重,在移动互联网时代,员工个人的设备接入 ...

  4. 基于IOS上MDM技术相关资料整理及汇总

    (转自:http://www.mbaike.net/special/1542.html) 一.MDM相关知识:MDM (Mobile Device Management ),即移动设备管理.在21世纪 ...

  5. C#进程间通讯技术-整理。

    原文:C#进程间通讯技术-整理. 扩展阅读:http://www.cnblogs.com/joye-shen/archive/2012/06/16/2551864.html 一.进程间通讯的方式 1) ...

  6. j2e应用相关技术

    j2e应用相关技术 轻量级j2e应用以传统的jsp作为变现层技术,以一系列开源框架作为MVC层,中间件,持久层解决方案,并将这些开源框架有机组合在一起,使得j2e具有高度的可扩展性,可维护性. ser ...

  7. BAT 前端开发面经 —— 吐血总结 前端相关片段整理——持续更新 前端基础精简总结 Web Storage You don't know js

    BAT 前端开发面经 —— 吐血总结   目录 1. Tencent 2. 阿里 3. 百度 更好阅读,请移步这里 聊之前 最近暑期实习招聘已经开始,个人目前参加了阿里的内推及腾讯和百度的实习生招聘, ...

  8. 关于Web开发里并发、同步、异步以及事件驱动编程的相关技术

    一.开篇语 我的上篇文章<关于如何提供Web服务端并发效率的异步编程技术>又成为了博客园里“编辑推荐”的文章,这是对我写博客很大的鼓励,也许是被推荐的原因很多童鞋在这篇文章里发表了评论,有 ...

  9. 【原】http缓存与cdn相关技术

    摘要:最近要做这个主题的组内分享,所以准备了一个星期,查了比较多的资料.准备的过程虽然很烦很耗时间,不过因为需要查很多的资料,因此整个过程下来,对这方面的知识影响更加深刻.来来来,接下来总结总结 一 ...

随机推荐

  1. 为什么我要放弃javaScript数据结构与算法(第五章)—— 链表

    这一章你将会学会如何实现和使用链表这种动态的数据结构,这意味着我们可以从中任意添加或移除项,它会按需进行扩张. 本章内容 链表数据结构 向链表添加元素 从链表移除元素 使用 LinkedList 类 ...

  2. Java 高级应用编程 第二章 集合

    一.Java 中的集合类 1.集合概述 Java中集合类是用来存放对象的 集合相当于一个容器,里面包容着一组对象 —— 容器类 其中的每个对象作为集合的一个元素出现 Java API提供的集合类位于j ...

  3. [原创]python高可用程序设计方法

    有时候程序上的bug会导致程序引发诸如段错误的情况而导致程序异常退出,这时用crond服务来检测,就会有一段时间程序处于不可用的情况,为了增强程序的可用性,我们可以让子进程处理业务,而让主进程检测子进 ...

  4. MySql慢查询日志——开启/查看/删除

    1,开启慢查询日志 修改mysql.ini文件,加入如下配置: [mysqld] log-slow-queries=H:\mysql_log\slow_query.log long-query-tim ...

  5. zabbix经常报警elasticsearch节点TCP连接数过高问题

    单服务器最大tcp连接数及调优汇总 单机最大tcp连接数 网络编程 在tcp应用中,server事先在某个固定端口监听,client主动发起连接,经过三路握手后建立tcp连接.那么对单机,其最大并发t ...

  6. Ceres优化

    Ceres Solver是谷歌2010就开始用于解决优化问题的C++库,2014年开源.在Google地图,Tango项目,以及著名的SLAM系统OKVIS和Cartographer的优化模块中均使用 ...

  7. ORB-SLAM(十一)EPnP

    EPnP在ORB-SLAM中主要用于Tracking线程中的重定位Relocalization模块,需要通过当前关键帧Bow与候选帧匹配上的3D地图点,迅速建立当前相机的初始姿态. PnP问题解决了已 ...

  8. clr via c#读书笔记四:call、callvirt

    1.嵌套类,就是定义在类中的类:嵌套类可以访问外部类的方法.属性.字段而不管访问修饰符的限制,但是外部类只能够访问修饰符为public.internal的嵌套类的字段.方法.属性: 2.CLR如何调用 ...

  9. dubbo之监控中心(monitor)

    一.monitor是dubbo框架中的一个监控中心.这个只是针对于消费者和提供者进行一个数据记录,不参与业务和使用.当然当monitor挂掉之后,也不会影响服务的正常运行. 二.在阿里的dubbo中也 ...

  10. What is the "internal" interface and port for on Openvswitch?

    转:https://ask.openstack.org/en/question/4276/what-is-the-internal-interface-and-port-for-on-openvswi ...