窗体已经引用uses EhlibAdo把dbgrideh1的sortlocal属性设置为true,
OptionsEh/SghAutoSortMarking属性设置为:True;
tiltebutton设置为true,数据集组件为TOraQuery;但还是不能排序,请问是什么原因?

解决方案 »

  1.   

    还要use一个EhlibXXX文件,其中XXX与数据集有关
    在 \DataService目录下,如TClientDataSet 要use EhlibCDS.
    安装的时候可能要编译进去,不过我安装的时候一般都把该目录的文件都加入了,直接use不知道行不行。
      

  2.   

    EhLibADO只能对使用了ADO数据源的DBGridEh进行排序。
    其对应关系大概是这样:
    BDE               TQuery         EhLibBDE 
    ADO               TADOQuery      EhLibADO 
    ClientDataSet     TClientDataSet EhLibCDS 
    DBExpress         TSQLQuery      EhLibDBX 
    InterBase Express TIBQuery       EhLibIBX
      

  3.   

    是不是对TOraQuery(for oracle数据组件)做数据集无效?
      

  4.   

    其实楼主可以自己写的:
    procedure TForm1.dbgGridEh1TitleBtnClick(Sender: TObject; ACol: Integer;
      Column: TColumnEh);
    begin
      if column.Title.SortMarker=smDownEh then
         OraQuery1.Sort :=column.FieldName
      else
         OraQuery1.Sort :=column.FieldName +' DESC';
    end;
    这样应该可以的,试试罗
      

  5.   

    定义了主件了没!在数据库里用group by
      

  6.   

    Kevin_Lmx(繁华阅尽) :
        TOraQuery 没有sort属性
      

  7.   

    可以用oraQuery+Datasetprovider+ClientDataSet试试