请教怎么设置 dbgrideh显示下拉式网格呢,数据源从那里引用呢???(单个的下拉式列表我会,但是网格总是不出来)

解决方案 »

  1.   

    DBGridEh属性:1.FooterRowCount设为1
                    2.SumList.Active 设为 True
                    3.对于要合计的字段的Footer.ValueType设为fvtSum
         特殊事件:GetFooterParams( Sender: TObject;   DataCol, Row: Integer;
                                   Column: TColumnEh;        AFont: TFont;
                           var Background: TColor;   var Alignment: TAlignment; 
                                    State: TGridDrawState;var Text: String);      
             例:------------------------------     
               begin
                 if Column.Field <> nil then
                 if column.Field.DataSet.active then
                 if lowercase(Column.Field.FieldName) = 'shouy_no' then
                    text := '(记录数:' + inttostr(column.Field.DataSet.recordcount) +')';   
               end;
      

  2.   

    不好意思,因为demo里的我没有懂是数据源是怎么从DM里面引用过来的,
      

  3.   

    Footer 的设置我是设置没问题 的。 不过也要谢谢newsofter(横空出世小霸王)
      

  4.   

    记得我以前用的时候也看了很长时间,现在提供给你。
    1.首先DBGridEh中建立永久列,否则只能显示一个下拉列。
    2.选中你要设置的lookup列,设置其属性lookupdisplayfields,在这个字段中可以显示多个列,一定要记得不同的列用;隔开,这些引用的列是你在设置lookup字段是的参考dataset的字段,不在这个dataset的字段引用的时候会出错。
    3.然后设置lookup列的如下属性:
    AutoFixcolWidth :true;
    dropdownshowtitles:true        //设置后就可以在下拉列表矿中看到列名,要显示汉字的话要在刚才说的lookup字段的dataset中设置字段的displaylabel属性
    dropdownsizing:true     //这样的话用户可以调整下拉框的大小
    dropdownwidth: -1         //重要   如果是-1的话,下拉框每列的宽度由lookup字段参考dataset中设置的字段的displaywidth决定。
      

  5.   

    在设置的过程中很多时候你看不到其他列,即使你把dropdownwidth的宽度设置为10000也看不到其他列的时候,一定要把dropdownwidth设置为-1,个人经验。