我有一个bzxm的access数据库,数据库中有表chanpin,表中有字段cpnum和cpname。我在delphi的form中使用了三个组件,adoquery、combobox、edit。现在是我已经用combobox调用数据库中的表cpnum的数据作为下拉列表。我现在想实现在下拉列表中选择某个值,edit组件可以显示出在表中对应的cpname。请前辈帮忙,因为刚开始接触,实在是不会了。

解决方案 »

  1.   

    with adoquery do
    begin
      close;
      sql.clear;
      sql.add('select * from chanpin where cpnum='+QuotedStr(combobox.text));
      open;
    end;
      

  2.   

    1.重新查询
    adoquery.SQL.Text:='select cpname from bzxm where cpnum='+QuotedStr(combobox.text);
    Edit1.Text:=adoquery.Fields[0].AsString;2.在添加combobox时,用AddObject();3.用DBConbobox+DBEdit
      

  3.   

    实现你说的功能顺序是这样的:
    1.查询数据表中符合Combox控件上显示的数据
    2.再将AdoQuery上的值赋给Edit控件下面的代码是我在电脑上写的,控件名可能跟你有点不一样,你改一下就好,在Combox的OnClick事件里面加入下面的代码:with qry1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('select * from chanpin where cpnum='''+cbb1.Text+'''');
      Open;
    end;
       edt1.Text:=qry1.fieldbyname('cpname').AsString;