好像是不可以的,我想只能在旁边方一个combobox,当点击单元格的时候去选择吧

解决方案 »

  1.   

    procedure Tbrowse.StringGrid1SelectCell(Sender: TObject; ACol,
      ARow: Integer; var CanSelect: Boolean);
    var
    tablename:string;
    begin
    setFieldList(tablename); //为ComBox_Field建立下拉列表选项
    ComBox_Field.Text:=StringGrid1.Cells[ACol,ARow];
    StringGrid1.Cells[ACol,ARow]:=ComBox_Field.Text;
    ComBox_Field.SetFocus;
    end;
    end;procedure Tbrowse.SetFieldList(tablename:string;);
    var Qry_temp:Tquery;
        ls_test:String; //SQL语句
    begin
      with Qry_temp do
          begin
            Close;
            SQL.Clear;
            ls_test:='select * from '+ls_TableName;
            SQL.Add(ls_test);
            Open;
            first;
          end;
          ComBox_Field.Style:=csDropDown;
          ComBox_Field.Clear;
          ComBox_Field.Visible:=true;
    /////////注意把要显示的列放在表中的第一列
          while not Qry_temp.eof do
          begin
            ComBox_Field.Items.Add(Qry_temp.Fields[0].asstring);
            Qry_temp.Next ;
          end;
        finally
      qry_temp.Destroy;
      end;
    end;
      

  2.   

    但ComboBox的Top,Left已经在单元格中的width和Height怎样设置