怎样对ComboBox.Items添加内容?(100分)

  • 主题发起人 主题发起人 樊家龙
  • 开始时间 开始时间

樊家龙

Unregistered / Unconfirmed
GUEST, unregistred user!
请问如何动态地(程序运行中)对ComboBox的Items添加项目?我是这样写的:
Form1.ComboBox1.Items.Append(Edit1.Text);实际运行中,可以加上去,
但程序重新启动后就没有了,而在设计时用Tstrings加的就可以保留。请各位高手指教。谢谢
 
你在程序中添加的在重新启动后当然就没有了,你如果想要保存的话就必须调用其
SaveToFile 这个方法,然后在重新进入时调用 LoadFromFile 这个方法.
 
你可以用数据库来保存combobox.text
 
在设计时添加的Commbobox内容会编译到程序中去,但是程序运行后
用语句增加的内容不会加到程序中去,当然重启动后就没有了.所以你得借助外部文件的
方法来实现内容的永久改变.可以考虑用INI文件,注册表,数据库,或其它的文件,甚至
写到程序自身的资源中.用的时候要把它重载到组合框中.
 
同意各位的意见!
 
这是当然的事件,要想保留,可是要自己写代码的啊。
保留结果有多种方法,如果数据量不大,可以使用注册表或INI文件,
如果数据量大,则自己写入一个指定文件吧。
 
可以把Combobox的内容存入一个表中,如下例:
先配置好BDE.
procedure TForm1.ButtonAddClick(Sender: TObject);
begin
Combobox1.Items.Append(edit1.text);
k:=k+1;
end;

procedure TForm1.ButtonSaveClick(Sender: TObject);
var j:integer;
begin
table1.open;
table1.edit;
table1.first;
for j:= 1 to k do
begin
table1.InsertRecord([Combobox1.items[j-1]]);
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
k:=0;
end;

end.
 
procedure TForm1.FormCreate(Sender: TObject);
begin
ComboBox1.Items.LoadFromFile('items.txt');
end;
procedure TForm1.FormClose(Sender: TObject);
begin
ComboBox1.Items.SaveToFile('items.txt');
end;
 
多人接受答案了。
 
后退
顶部