dbgrid的问题(100分)

W

winsock

Unregistered / Unconfirmed
GUEST, unregistred user!
大家好,请教一个dbgrid的问题。怎么点击dbgrid上的标题进行升降序排列呢?谢谢。
我连最简单的怎么点击dbgrid的标题都不会啊。要设置那个属性呢?
 
排序举例(Adodataset)
Adodataset1.sort:='[要排序的字段名称] DESC'
//DESC倒排,ASC正排

在DBGRID的OnTitleClick写入排序代码就可以,在这个方法中的Column参数为DBGRID的列,
你可以根据这个参数来获得是在DBGRID的哪一个标题上单击。

代码:TheDataset.sort:='['+column.Title+']'+' DESC';
thedataset就是你DBGRID的DATASOURCE的DATASET。
 
含糊不清, 到底是要对什么排序? 是对记录吧?

如果你要对记录进行排序, 可以用TQuery做数据集, 然后用SQL语句的Order by子句
进行排序.
缺省升序, DESC降序
 
处理dbgridtitleclick事件:
首先得到该列的字段名field:=Column.Field.FieldName
然后得到具体值condition:=adodataset.fields[field].value;
查询'select * from table where '+ field+' like '''+condition+''%'';
 
ExpressQuantumGrid控件中的TdxDBGrid可以轻松实现这一功能
设置Filter:在TdxDBGrid属性中Filter组中Active=true
设置Sort:在OptionsBehavior中设置 :edgoAutoSort=true
 
多人接受答案了。
 
顶部