delphi中两个DBComboBox关联显示问题,ADO+SQL SERVER

一个DBComboBox1显示省份,DBComboBox2根据DBComboBox1,显示该省份内的市级城市名创建form时,添加代码,一个Query获取省份,添加到DB... 一个DBComboBox1显示省份,DBComboBox2根据DBComboBox1,显示该省份内的市级城市名

创建form时,添加代码,一个Query获取省份,添加到DBComboBox1;接着SQL查询DBComboBox1显示省份的市级城市名,添加到DBComboBox2

另外,DBComboBox1内容变化时,SQL查询DBComboBox1显示省份的市级城市名,添加到DBComboBox2

现在出现的问题:
1.类似代码,DBComboBox1显示正常,DBComboBox2只显示出一个非关联性的城市名;

2.DBComboBox1变化时,DBComboBox2在原显示下添加,原城市名还在(已调用items.clear后才添加的……),而且;点下拉列表中市名,DBComboBox2.text没有变化。
展开
 我来答
czphoenix
2008-09-07 · TA获得超过889个赞
知道小有建树答主
回答量:1227
采纳率:0%
帮助的人:569万
展开全部
DBComboBox1OnChange(Sender:TObject);
begin
if Trim(DBComboBox1.Text)<>'' then
begin
DBComboBox2.Items.Clear;
ADOQuery2.Close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.ADD('select 城市名称 from CityTable Where 省份='''+Trim(DBComboBox1.Text)+'''');
ADOQuery2.Open;
While not ADOQuery2.EOF DO
begin
DBComboBox2.Items.Add(ADOQuery2.FieldByName('城市名称').asstring);
end;
end;
end;

//每次点DBComboBox1,都必须清除DBComboBox2的内容,重新刷新的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式