如何通过单击DbDrid列的标题自动排序,同时在标题列上显示上下箭头!(100分)

  • 主题发起人 主题发起人 liujunguo
  • 开始时间 开始时间
L

liujunguo

Unregistered / Unconfirmed
GUEST, unregistred user!
问题要求:
1。单击DbDrid不同列的标题按不同字段排序,
2。在相应列的标题上显示排序的方式(升序,降序),用图形显示(上下箭头).
 
我看您只好改用TListVies了,用DbGrid实现排序只好在查询语句中加入order by
重新查询,但是定位可是太困难了!我觉得没戏!

 
应该可以的吧. 排序用改变索引的办法实现试试.
另外,不知是否有相应的控件.
 
用Expressgrid好象可以排序,没具体用过。
 
1.用rxlib中的rxdbgrid,全部自动支持,看看demo!
2.自己做大致是customdraw,判断cell是否是fixed,也不是太难。
 
1. 排序作过, 例:
procedure TfrmDZW05.dbg_SHOHINTitleClick(Column: TColumn);
begin
if sOrder = ' ORDER BY ' + Column.FieldName
then sOrder := sOrder + ' DESC'
else if sOrder <> ' ORDER BY ' + Column.FieldName then
sOrder := ' ORDER BY ' + Column.FieldName;
p_Sqlqry;
end;

2. 加上箭头,没作过.
知道了也告诉我.

 
我好象听说文件型数据库使用order by受限制。
 
非常简单,有好几种方法,rxlib,infopwer...
我使用的是一个自己的方法,
你可使用Infopower,有现成的例子.
 
我找到了RXLIB260,很好用,但如何设置才能通过单击标题栏动态改变排序方式(升序和降序).
 
我写过这样一个类
使用起来很简单
只需把Query和DBGrid传递过来,一切就全部搞定,还有箭头显示,傻瓜级的。
总之,一切包你满意。
写新给我,我mail给你
tale_sun@263.net
 
用InfoPower吧。
 
rxdbgrid做到这一点非常简单.
 
dev express 的dxgrid非常好,能全部满足你的要求
http://202.99.168.17/delphi/com 下的
devexpress equantum grid 1.0.zip
即是。
 
对!用DevExpress Grid吧!
虽然我还没有用过,但看了它的demo程序,简直是...酷毙了!
这里好象也有:http://www.smartkidsoft.com
 
多人接受答案了。
 
后退
顶部