关于Delphi的Combobox!谢谢!(100分)

  • 主题发起人 主题发起人 坐井看天阔
  • 开始时间 开始时间

坐井看天阔

Unregistered / Unconfirmed
GUEST, unregistred user!
大家好!
小生初来,请高手指点迷津,还请不吝赐教.
我想实现一个功能,就是:在Combobox中输入东西的时候实现智能化。
比如说里面有 (111-昆明市 112-楚雄市 113-曲靖市 114-红河洲 115-双柏县。。。 )很多项,,而我想在输入的时候实现四种方法:1、上次输了,下次再输时默认上次输的项; 2、比如要输昆明,就打“km”,要输红河,就打“hh”,然后它对应的项就跳出来然后选择就好了; 3、每一次都是把每个市或洲县的代码赋给Combobox.text.
这个功能如何实现,还请大家指点,小生在此先谢过了。
----------------------------------------------
 
这个可能要结合到数据库查询才好做。
 
用cxCombobox 吧~~它自带这功能
 
可以利用数据库
初始化的时候可以
var
qry:Tquery;
begin
qry.close;
qry.sql.clear;
qry.sql.add('select 城市名 from 表名');
if not qry.isempty then
begin
with combobox1.itemdo
begin
qry.frist;
if not qry.eof then
begin
add(qry.fieldbyname('表名').asstring);
qry.next;
end;
end;
end;

combobox 增加新的城市名时
qry.close;
qry.sql.clear;
qry.sql.add('select 1 from 表名 where 城市名='''+combobox.text+'''');
qry.open;
if qry.isempty then
begin
qry.append;
qry.fieldbynaem('城市名').asstring:=combobox.text;
qry.post;
end;
 
用edit和listbox就行
if sysutils.Trim(edxm.Text) <> '' then
begin
with query1 do
begin
close;
CommandText := 'select 城市名称 from 城市表 where 城市简拼 like '''+edit1.text+'%'''';
open;
listbox1.Items.Clear;
while not eofdo
begin
listbox1.Items.Add(FieldByName('城市名称').asstring);
next;
end;
if RecordCount > 0 then
listbox1.Visible := true
else
listbox1.Visible := false;
end;
end else
listbox1.visible := false;
 
谢谢大家了,但是我还想问一下,CxComboBox在哪儿找啊,谢谢!
 
后退
顶部