做了个右键筛选动作,直接点击DBGRIDEH单元格内的数据,就能以此为筛选条件,选出跟此单元格内数据相同的所有数据记录。要如何操作?

解决方案 »

  1.   


    procedure TForm1.DBGrid1CellClick(Column: TColumn);
    begin
      Showmessage(Column.FieldName);
    end;
      

  2.   

    还有个问题,Column.FieldName这样是可以找到字段名,可我DBGRIDEH显示是中文,数据库是英文,怎么对应?
      

  3.   

    数据库查询:Adoquery1.sql.add(select ID,MC,GG from 表 where ()='''+DBGridEh1.SelectedField.Text+'''');
    括号要怎么写,依点击单元格,并依单元格内容为查询条件进行筛选。
      

  4.   

    我在一张DHGRIDEH表里随机点取一个单元格,并以该单元格的内容为条件,进行筛选。关键是现在无法判断我所选的是哪个单元格,并进行筛选。也就是Adoquery1.sql.add(select ID,MC,GG from 表 where ()='''+DBGridEh1.SelectedField.Text+'''');这条代码中的括号是代表点击单元格对应的字段,这个字段不是固定的,如何操作?
      

  5.   

    存货编号  存货名称  规格型号
    A1       B1       C1
    A2       B2       C2例如此表,我点击A1时,就以A1为条件,筛选出字段是A1的所有记录。点B2,就以此为条件进行筛选。
      

  6.   

    自己把列的字段名称存起来
    例如
    var
      FileName:Array[0..2] of string;FildName[0]:=存货编号(数据库中的字段名);
    FildName[1]:=存货名称(数据库中的字段名);
    FildName[2]:=规格型号(数据库中的字段名);然后根据你点击的列来获取字段名