+ -
当前位置:首页 → 问答吧 → 请问怎么对AdvStringGrid的列下拉框赋值呢?

请问怎么对AdvStringGrid的列下拉框赋值呢?

时间:2011-11-21

来源:互联网

目前网上都是在初始化时设置
procedure TForm1.AdvStringGrid1GetEditorType(Sender: TObject;
  ACol, ARow: Integer; var AEditor: TEditorType);
begin
  if ACol =2 then
  begin
  aEditor := edComboList;
  AdvStringGrid1.ClearComboString;
  AdvStringGrid1.AddComboString('10CM');
  AdvStringGrid1.AddComboString('20CM');
  end;
end;


初始化后怎么对edComboList赋值呢?
procedure TForm1.Button1Click(Sender: TObject);
var
  combo:TGridCombo;
begin
combo:=TGridCombo(AdvStringGrid1.CellProperties[2,1]);
combo.Items.Add('123');//都会报错
end;

作者: life923   发布时间: 2011-11-21

GetEditorTyp事件是你每次点击单元格就触发一次,你怎么在外面赋值那,就算你赋值成功应该也没有吧

作者: zhnglicho   发布时间: 2011-11-22

procedure TForm1.AdvStringGrid1GetEditorType(Sender: TObject;
  ACol, ARow: Integer; var AEditor: TEditorType);
begin
  if ACol =2 then
  begin
  aEditor := edComboList;
  AdvStringGrid1.ClearComboString;
  AdvStringGrid1.AddComboString('10CM');
  AdvStringGrid1.AddComboString('20CM');
  end;
end;


这样能写吗?
procedure TForm1.Button1Click(Sender: TObject);
begin
AdvStringGrid1.AddComboString('30CM');
end;

作者: xfxlylove   发布时间: 2011-11-28