dbcombobox中實現IE下拉菜單功能?

wmf9941128 2006-10-18 11:07:07
表A: orderno,supplier_no, orderdate,comment
表B:supplier_no,supplier_name,remark

在DBcombobox中(字段為A中的supplier_no)輸入字母時,根據模糊查詢查出表B中匹配此字母的所有supplier_no,同時像IE那樣自動展開.請問該怎麼處理?想了很就都沒有實現出來.
請大家給點指點,謝謝!
...全文
115 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
imho888 2006-10-20
  • 打赏
  • 举报
回复
有一个这样的控件,叫EXDBEdit,好像是这个,实现的功能非常的全。
risman 2006-10-20
  • 打赏
  • 举报
回复
学习ing
wmf9941128 2006-10-20
  • 打赏
  • 举报
回复
to netfly(支点):
之前我用了一个dbedit和一个combobox组合了用,可以达到部分效果,但是就是自动展开的动作需要自己用鼠标点.你说的这种方法我来试一下,谢谢了!
wmf9941128 2006-10-20
  • 打赏
  • 举报
回复
to imho888() :没有这个控件,网上搜不到.
netfly 2006-10-20
  • 打赏
  • 举报
回复
要自己写一个吧,难度也不是很大。


1)给一个FORM,这个FORM的位置根据EDIT来定,不过要处理FORM的一些事件。
1)在EDIT里输入,然后在ONCHANGE事件里处理
2)在ONCHANGE里做筛选然后将结果增加到FORM的一个LISTBOX空间里。
wmf9941128 2006-10-19
  • 打赏
  • 举报
回复
大家进来看一下呀!
wmf9941128 2006-10-19
  • 打赏
  • 举报
回复
to benzcb(kpig.zcb) ( ) :
你这样做达不到我的效果的.我的想法是这样的:在向DBcombobox输入字符时,当你输入第一个字符时,程序自动将dbcombobox展开,里面显示的是表B中所有含有此字符的supplierno(select supplier_no from 表B where supplierNo like trim(dbcombobox1.text)% ),向IE那样自动展开.
你的想法是先将Dbcombobox中的Item用supplier_no填充起来,然后输入时寻找,我之前试过的,达不到我想要的效果.
benzcb 2006-10-18
  • 打赏
  • 举报
回复
while not(ADODataSet1.Eof) do
begin
DBComboBox1.Items.Add(ADODataSet1.fieldByName('supplierNo').AsVariant);
ADODataSet1.Next;
end;
benzcb 2006-10-18
  • 打赏
  • 举报
回复
ADODataSet的CommandText := 'select * from TempA , TempB where TempA.supplierNo = TempB.supplierNo'

DBComboBox的DataField := supplierNo

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧