如何把一个表中的某一列的值不重复的添加到combobox的下框中。表中有重复的值,combobox中不允许重复。先谢了。
解决方案 »
- TMS 4.4以上版本 表格控件 SaveToFile LoadFromFile 有问题
- DELPHI如何捕捉窗体句柄,然后在该窗体中实现某些操作?
- sqlDataset控件使用问题!
- 怎么判断 alt+print screen事件,然后把复制的图保存到新的word 文件中?
- 跪求 经典三层范例源码
- 我的delphi7安裝了後,怎麼一個控件都沒有, 一片空白。
- 请教一句简单的数据更新的sql语句。Access
- 请问一个DLL执行的时候如何得知自己所在的目录
- 请问用delphi开发的游戏中有.map类型的文件,这个文件是地图文件,它是怎么做出来的?(能解释一下吗?)
- 100分:怎样用进度条显示Timage调入图片的过程
- text类型如何提高查询速度(SOS)
- datagrid的数据源问题?
查询语句如下:
SQL2000:
select distinct 列名 from 表名
ACCESS:
select distinctrow 列名 from 表名
ADOQuery.First;
while not ADOQuery.Eof do begin
Combobox1.Items.add(FieldByName('列名').AsString);
ADOQuery.Next
end;
MyFieldName: String);
begin
MyComboBox.Clear;
MyADODataSet.First;
While not MyADODataSet.Eof do
begin
MyComboBox.Items.Add(MyADODataSet.FieldValues[MyFieldName]);
MyADODataSet.Next;
end;
end;
用一个adoquery/adotable/query/table等控件之一连接到数据库,在其OnActive事件中编写代码如下:
if combobox1.items.indexof(adoquery1.fieldbyname('字段名').asstring) then
combobox1.items.add(adoquery1.fieldbyname('字段名').asstring);
//方法是先判断该值在列表框中,如果不在,就添加进去
///////////////////////////////
cb_name是一个comboBox
var
B_find:boolean;
I_temp:integer;
begin
with ADOQuery do
begin
close;
sql.clear;
sql.text:='select * from goodsmessage order by name';
open;
while not eof do
begin
B_find:=false;
for I_temp:=0 to cb_name.items.count-1 do
begin
if cb_name.Items[i_temp]=fieldbyname('name').asstring;
then b_find:=true;
if not b_find then
cb_name.items.add(fieldbyname('name').asstring);
next;
end;
close;
end;
end;
为什么我用DBLookupComboBox控件后,下拉菜单里的东西不能选择啊?