怎样在DBCOMBOBOX中显示数据库中的数据?(100分)

W

wbxing

Unregistered / Unconfirmed
GUEST, unregistred user!
请问各位,我是DEPHI 的初学者,请问要将某个数据库的所有记录的同一字段在一个
组合框的列表中显示,有哪些实现方法,最好也能给我讲一下如何使用控件DBCOMBOBOX
来实现(因为后面还要涉及其他部分)。谢谢!!
 
把它的database源写上,table写上,字段名选上,即可
 
很简单,是一下:(其它组件自己连接)
With ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.ADD('select ADWNote from T_8_Dictionary_Key where ADCNo =' + #39 + ls_Dictionary + #39 + ' order by ADWordNo');
Open;
end;
ADOQuery1.First;
ll_RowCount := ADOQuery1.RecordCount;
for j:= 1 to ll_RowCount do
begin
DBComboBox.Items.Add(ADOQuery1.FieldByName('ADWNote').AsString);
ADOQuery1.Next;
end;
 
用一个query组件,代码如下:
query1.close;
query1.sql.clear;
query1.sql.add('selecr * from 表名');
while not query1.eof do
begin
combox1.items.add(query1.fields[0].asstring);//第一个字段的所有值
query1.next;
end;
 
farce,你的方法我试过了,可是只能显示第一个记录????
knmfkr,按你的方法,那能不能从组合框里的列表中的某一项查询到她对应表中的
另一列值(主键)呢?
 
如果只是显示,不可能只显示第一个记录
如果是两表对应的,那么应在lookup中设置(我在网吧,忘了属性名)
 
用dblookupcombobox
select distinct name from tablename
设置 listsource :datasource
listfield : name
keyfield:name
with query do
begin
close;
open;
dblookupcomcombox.keyvalue:=fieldbyname('name').asstring;
end;
 
用dblookupcombobox即可!!
 
多人接受答案了。
 
顶部