1 。dbgrid中添加控件如combobox,
2。查询到数据集后点击相应的fieldbyname 显示combobox。。
3. 点击combobox后选中 内容后 并对dbgrid的操作可以让combobox控件选中的内容马上显示前面的1.2.我都做出来了。。就是第三个。。
我用  with Query1  do
     begin
       Open ;
       Insert;
       FieldByName('rq').Value := rq.Text;
       Post;
       Refresh;
     end;  不行。。
有没那位大侠 给个方法。。急急急急急急急急急急急急急急急急急急急急急急

解决方案 »

  1.   

    这样试试。
    with Query1  do
         begin
           Open ;
           Insert;
           FieldByName('rq').Value := rq.Text;
           Post;
           close;
           Open ;
         end;  
      

  2.   

    谢谢  不行提示了 该dateset为只读。。
      

  3.   

    其实对于TDBGrid组件,它的TColumn对象有个   
      TStrings类型的PickList属性。
      

  4.   

      DBGrid指定列上显示DBComboBox   
        
      设置DBGrid1的OnDrawDataCell事件如下:   
      procedure   TForm1.DBGrid1DrawDataCell(Sender:   TObject;   const   Rect:   TRect;   Field:   TField;   State:   TGridDrawState);   
      begin   
          if   (gdFocused   in   State)   then   
          begin   
              if   (Field.FieldName   =   DBComboBox1.DataField   )   then   
              begin   
                  DBComboBox1.Left   :=   Rect.Left   +   DBGrid1.Left;   
                  DBComboBox1.Top   :=   Rect.Top   +   DBGrid1.top;   
                  DBComboBox1.Width   :=   Rect.Right   -   Rect.Left;   
                  DBComboBox1.Height   :=   Rect.Bottom   -   Rect.Top;   
                  DBComboBox1.Visible   :=   True;   
              end;   
          end;   
      end;   
      

  5.   


    ..还是显示。。提示了 该dateset为只读。。