為什麼ComboBox的下拉只有一項 |
尚未結案
|
tianwei
一般會員 發表:2 回覆:1 積分:0 註冊:2005-10-13 發送簡訊給我 |
|
haman
中階會員 發表:46 回覆:137 積分:56 註冊:2005-03-10 發送簡訊給我 |
|
topspeedbuilder
一般會員 發表:10 回覆:20 積分:6 註冊:2004-05-11 發送簡訊給我 |
|
sos_admin
版主 發表:121 回覆:697 積分:768 註冊:2003-07-23 發送簡訊給我 |
你可以按照上面两位的方式做,我在这儿总结如下:
var Adoquery: TADOQuery; begin Adoquery := TADOQuery.Create(self); try Adoquery.Connection := ADOConnection1; Adoquery.Close; Adoquery.SQL.Text := 'select username from userinfo order by username'; Adoquery.Open; ComboBox1.Clear; ComboBox1.Style := csDropDownList; while not Adoquery.Eof do begin ComboBox1.Items.Add(Trim(Adoquery.fieldbyname('username').AsString)); Adoquery.Next; end; if Adoquery.RecordCount > 0 then ComboBox1.ItemIndex := 0; finally Adoquery.Free; end; end;风花雪月 e梦情缘 网络代号:wnhoo or sos_admin 网名:e梦缘 Mail:wnhoo@163.com |
tianwei
一般會員 發表:2 回覆:1 積分:0 註冊:2005-10-13 發送簡訊給我 |
sos_admin,您好
感謝您幫我解決這個問題,昨天的時候,我自己也編寫了一段代碼,
我總覺得我存在一定的風險
我的程式是這樣的
var
i : integer
begin
for i = 0 to ADOQuery.RecordCount-1 do
begin
ComboBox.Items.Add(ADOQuery.FieldByName['User']);
ADOQuery.next;
end;
end; 如果:ADOQuery和ComboBox不在同一個表單裏面,運行的時候
for i = 0 to UsersFrm.ADOQuery.RecordCount-1 do
這句話就會產生錯誤。 請指教
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
sos_admin
版主 發表:121 回覆:697 積分:768 註冊:2003-07-23 發送簡訊給我 |
如果:ADOQuery和ComboBox不在同一個表單裏面,運行的時候
for i = 0 to UsersFrm.ADOQuery.RecordCount-1 do
這句話就會產生錯誤。
================================================
是什么错误信息? 可能发生情况,我想你也是如同cashxin2002所说Adoquery没有Open
或者Adoquery 所在form ,在combobox所在form子后create,而造成访问非法。 至于上面给你方法,你可以用在很多类似情况,没有风险
我都用过
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |