加一个Query1,在与数据表相连的Table如Table1的AfterPost(这个事件是你在更新了数据表以后,系统自动执行的) Query1.close; Query1.sql.clear; Query1.sql.add('select Distinct Userl from 表名'); Query1.Prepared:=True; Query1.Open; ComboBox1.Items.Clear; Query1.First; while not Query1.eof do begin ComboBox1.Items.Add(Query1.FieldByName('Userl').asstring); end;
方法1:加个timer控件,在ontimer里写代码,从数据库中读取数据再添加到combox里
方法2:自己写个procedure,从添加数据的窗口中传个消息到要刷新的窗口,触发你写的procedure来刷新你的combox.
第一个方法会影响到程序效率,第二个可能实现起来有一定难度.
Query1.close;
Query1.sql.clear;
Query1.sql.add('select Distinct Userl from 表名');
Query1.Prepared:=True;
Query1.Open;
ComboBox1.Items.Clear;
Query1.First;
while not Query1.eof do
begin ComboBox1.Items.Add(Query1.FieldByName('Userl').asstring);
end;