`

点击wwDBGrid的标题进行排序

 
阅读更多


{--排序--cyj 2009-7-13}
procedure TDispatchForm.wwDBGridSort(Sender: TObject;
  AFieldName: String);
begin


   //--cyj 2009-7-10 起
if ((Sender as TwwDbGrid).DataSource.DataSet.State in [dsedit,dsinsert]) then Exit;
  ProgressStatus.Caption:='正在排序资料,请稍候>>>>>';
  ProgressStatus.Visible:=True;
  Application.ProcessMessages;
  ((Sender as TwwDbGrid).DataSource.DataSet as TClientDataSet).Indexdefs.Clear;
  if (Sender as TwwDbGrid).Tag=0 then
  begin
    with ((Sender as TwwDbGrid).DataSource.DataSet as TClientDataSet).Indexdefs.AddIndexDef do
    begin
    Name:=AFieldName;
    Fields:=AFieldName;
    end;
    (Sender as TwwDbGrid).Tag:=1;
  ((Sender as TwwDbGrid).DataSource.DataSet as TClientDataSet).IndexName:=AFieldName;
  end else
  begin
    with ((Sender as TwwDbGrid).DataSource.DataSet as TClientDataSet).Indexdefs.AddIndexDef do
    begin
    Name:=AFieldName+'1';
    Fields:=AFieldName;
    DescFields:=AFieldName;
    (Sender as TwwDbGrid).Tag:=0;   
    end;
   ((Sender as TwwDbGrid).DataSource.DataSet as TClientDataSet).IndexName:=AFieldName+'1';   
  end;
  ProgressStatus.Visible:=False;

   //--cyj 2009-7-10 止
end;

分享到:
评论

相关推荐

    InfoPower.v4000.5.FS.For.Delphi7

    例如,它支持多列排序、行选择模式、自定义列头以及更丰富的数据格式化功能。这些特性使得开发者可以构建出更加用户友好的数据查看和编辑界面,从而提升应用程序的整体质量。 InfoPower.v4000 的优点在于其高度的...

    虚拟Grid选择框

    2.使用InfoPower的wwDBGrid1, 添加计算字段[XX], 并放置在最顶部(即Grid的最左边). 3.在wwDBGrid1的字段编辑器中,选择字段[XX], 在[Edit Contral]页面中,设置[Contral Type]=CheckBox, 并设置checked值=True, ...

    InfoPower.Studio.v.17.0.5.2.XE10.2.Source

    这个版本的亮点在于它包含了完整的源代码,使得开发者可以深入理解控件的工作原理,并根据项目需求进行定制化开发。 InfoPower Studio 支持 Delphi XE10.2 Tokyo,这是 Embarcadero Technologies 公司推出的 Delphi...

    delphi编写生成数据库脚本升级程序

    用delphi编写一个程序可以方便开发人员设计数据库,同时自动生成相应的数据库脚本。其功能如:数据库设计和access数据库实体相关联,将每一步跟新都放映到数据库中调用系统中原有的创建数据库功能以及数据库升级功能...

    Delphi 将Grid导出OpenOffice里

    在Delphi里将wwDBGrid,DxDBGrid,CxDBGrid 导出至OpenOffice里面的函数

    dbgrid 的一些用法

    procedure TTimeTableForm.wwDBGrid1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if (Key = 13) then begin with TwwDBGrid(Sender) do begin if (SelectedField <> nil) then // ...

    RMReport 7

    2、 如何打印wwDBGrid? 修改rm.inc,如果想支持RX,GIF,JPEG,DimandAccess,Halcyon,DBISAM, EHLib,也需要修改rm.inc //{$DEFINE InfoPower} //修改这行,去掉"//" //{$Ehlib} 3.试用版安装方法(以下假设将文件释放到c...

Global site tag (gtag.js) - Google Analytics