如何讓combobox的items不顯示相同的項目 |
答題得分者是:eric039
|
danielldf
一般會員 發表:44 回覆:60 積分:20 註冊:2003-05-12 發送簡訊給我 |
|
eric039
中階會員 發表:57 回覆:126 積分:51 註冊:2002-11-30 發送簡訊給我 |
您可以在 Query 裡判斷
tempString := '';
while not ADOQuery.eof do
begin
if tempString <> AdoQuery.FieldByName('No').AsString then
Tcombobox.Items.Add := AdoQuery.FirldByName('no').AsString;
TempString := ADOQuery.FieldByName('No').AsString;
ADOQuery.Next;
end;
這樣就可以把重複的寫入 TCombobox 內
前提是 Filed "NO" 必須是排序的 Key(也就是 Order By 'Field' Asc)
這樣是不是可以達到您的要求 Eric Lin
------
Eric Lin |
xiaoning79627
初階會員 發表:46 回覆:60 積分:26 註冊:2002-11-10 發送簡訊給我 |
引言: 我要用combobox顯示一个表中的字段(通过ADOquery),但是有相同的内容(如第一条記錄与第二条記錄的这一字段值都是001,那么在combobox的下拉框中会出現两个001),請教如何只顯示一个呢? 我用的是MS SQL数据庫 發表人 - danielldf 於 2003/10/31 18:44:37先查询出无重复的数据记录。然后在加入。 如: with Adoquery1 do begin Close; Sql.clear; Sql.Add('Select distinct('字段') from 表'); Open; end; 然后将查询出的数据加入到Combobox的Item中 if not ADOQuery1.IsEmpty then while not ADOQuery1.Eof do begin ComboBox1.Items.Add(ADOQuery1.Fieldbyname('字段').AsString); ADOQuery1.Next; end; 努力,相信会做的更好! 發表人 - xiaoning79627 於 2003/11/01 15:32:53 發表人 - xiaoning79627 於 2003/11/01 15:35:26 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |