对应于DBGgrid的onTitleClick
将dbgrid的datasource的dataset强制转换为Query
然后对query的sql.text进行处理即可。

解决方案 »

  1.   

    在DBGrid的TileClick事件中写代码:
    if Column.Field.FieldName = '要排序的字段名' then
    begin
      if FSortFlag then  //FSortFlag 是一全局变量
      begin
        DBGrid.DataSource.DataSet.sort := '要排序的字段名 Asc';
        FSortFlag := False;
        Exit;
      end
      else begin
        DBGrid.DataSource.DataSet.sort := '要排序的字段名 Desc';
        FSortFlag := True;
        Exit;
      end;
    end;