请问怎样能设置Combobox的 text值? (50分)

  • 主题发起人 主题发起人 zhuyi
  • 开始时间 开始时间
Z

zhuyi

Unregistered / Unconfirmed
GUEST, unregistred user!
您好!
我想把ComboBox做成速达2000中那样,ComboBox的items有:
<新增供应商......>
<查找供应商......>
<供应商1>
<供应商1>
<供应商2>
............
...............
在用户选了<新增供应商.....>或<查找供应商.....>后弹出
供应商的查找或新增窗口,返回后将供应商的字符串填到ComboBox
的Text中.我本来以为这没有什么,但具体一试才发现要想在
ComboBox的onchange事件中对Combobox的Text赋值是没有用
的.
如:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
if combobox1.ItemIndex = 0 then
ComboBox1.Text := 'Hello!';
end;

运行后ComboBox.text 仍然等于items[0]的值。

您有什么好办法吗?

谢谢!


 
timer1.interval=1;

procedure TForm1.ComboBox1Click(Sender: TObject);
begin
combobox1.tag:=0;
timer1.enabled:=true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if combobox1.tag=0 then
begin
if combobox1.Text=combobox1.Items.Strings[0] then
combobox1.text:='hell0';
combobox1.tag:=combobox1.Tag +1;
end
else
timer1.Enabled:=false;
end;
 
就是说,把新添的供应商的名字显示在 text 中,
可以先把它加进去,然后把 itemindex 设为你的新增的索引就行乐。
 
ComboBox的内容应该存成文件。
新增供应商即在文件中增加内容,返回时ComboBox重读文件内容即可。
 
var
i: integer;
begin
i:=combobox1.itemindex;
combobox1.Items.Strings:='O_O';
combobox1.itemindex:=i;
end;
 
多人接受答案了。
 
后退
顶部