1.stringgrid1添加onGetEditorType事件
procedure TForm1.stringgrid1GetEditorType(Sender: TObject; ACol,
ARow: Integer; var AEditor: TEditorType);
begin
with StringGrid1 do
if ACol = 0 then
begin
aEditor := edComboList;
ClearComboString;
ComboBox.Items.Add('bbb');
ComboBox.Items.add('ccc');
if StringGrid1.Cells[ACOL, AROW] <> '' then
begin
MouseActions.DirectComboDrop := FALSE;
MouseActions.DirectEdit := True;
end
else
begin
MouseActions.DirectComboDrop := TRUE;
MouseActions.DirectEdit := TRUE;
end
end;
end;
2.1.stringgrid1添加onHasComboBox事件
procedure TForm1.stringgrid1HasComboBox(Sender: TObject; ACol,
ARow: Integer; var HasComboBox: Boolean);
begin
HasComboBox := (ACol = 0) ;//这里的条件是判断
end;
3.按钮单击事件
procedure TForm1.btn3Click(Sender: TObject);
begin
StringGrid1.ControlLook.DropDownAlwaysVisible:=True; //显示下拉列表
end;