ComboBox同步(44)

  • 主题发起人 主题发起人 爱情魔咒
  • 开始时间 开始时间

爱情魔咒

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大哥:小弟有事相求我设计了一个程序 用两个ComboBox分别连到数据库里的一个type表 p_type和p_type_name又加了一个DBGrid连到数据库的另个表product其中product表中也有一个p_type字段我想让ComboBox发生change事件的时候 另一个ComboBox和DBGrid中的数据 对应同步 请问怎么办啊 ?用ComboBox1.ItemIndex:=ComboBox2.ItemIndex不行啊 我分别用了adoTable和adoQuery,adoTable连type表adoQuery连product表
 
change的时候写事件啦 这个需要手工处理的
 
没错的。自己在Change里编写代码处理吧。
 
我是把DBGrid连到adoQuery上面,用change改变adoQuery的sql语句 但是没反应啊procedure TForm.ComboBox1Change(Sender: TObject);var sqlstr:string;begin ComboBox1.ItemIndex:=ComboBox2.ItemIndex; if adoQuery.Active then adoQuery.Active:=False; with adoQuery do begin close; sql.Clear; sqlstr:='select * from product where p_type=:i'; sql.Add(sqlstr); parameters.ParamValues['i']:=strtoint(ComboBox1.Text); open; end; adoQuery .Active:=True;end;
 
change 事件里边写代码, 重新联接数据库, 重新执行. 试一试. 一定行的.
 
用数据感知控件不用写事件。devexpress。或者delphi自带的都可以。配合locate就能用了
 
在change里写事件,用filtered过滤就是咯。
 
后退
顶部