Demo学习: ColumnSort

ColumnSort

设置UniDGGrid点击表头时排序,设置方法比较麻烦且不通用,在实际开发中用处不大。

自己在项目中用了一个比较笨的办法,写了一个函数通过sql来排序:

procedure TMainForm.dbgRealtimeColumnSort(Column: TUniDBGridColumn;
  Direction: Boolean);
var
  sName: string;
  bAll, bSort: Boolean;
begin
  bSort := not dbgRealtime.TabStop; //正序或者倒序
  bAll := rdbAllStcd.Checked;
  //调用排序函数
  ShowRealtimeSTCDForSort(bAll, WaterworksInfo.wwID, Column.Index+1, bSort);
  dbgRealtime.TabStop := not dbgRealtime.TabStop;
end;

procedure TMainForm.ShowRealtimeSTCDForSort(AQureyAll: Boolean; ASTCD: string;
  SortCol: Integer; Sort: Boolean);
var
  sql: string;
  nSort: Integer;
begin
  nSort := Integer(Sort);
  if AQureyAll then
  begin
    sql := Format('exec spGetSort 1, 0, %d, %d', [SortCol, nSort]);
  end
  else
  begin
    sql := Format('exec spGetSort 0, %s, %d, %d', [ASTCD,SortCol,nSort]);
  end;
  UniMainModule.DoQuery(sql, UniMainModule.qryRealtime);
  SetRealtimeSTCDGrid;
end;

 

转载于:https://www.cnblogs.com/fengxb/p/3108842.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值