好了,我有一個數據庫查詢,它返回COUNTRYNAME列Delphi:通過qry結果填充下拉框的最快方法是什麼?
SELECT CountryName FROM Counties
我將如何把這些國家名稱到下拉框項目選項(不通過他們的循環?)
好了,我有一個數據庫查詢,它返回COUNTRYNAME列Delphi:通過qry結果填充下拉框的最快方法是什麼?
SELECT CountryName FROM Counties
我將如何把這些國家名稱到下拉框項目選項(不通過他們的循環?)
我會使用類似TDBLookupComboBox的東西。將一個放在窗體上並設置像這樣的屬性。
DataSource = srcCustomers
DataField = 'country_id'
ListSource = srcCountries
ListField = 'NAME'
KeyField = 'ID'
此代碼將在窗體上顯示國家/地區名稱,並將國家/地區ID置於db Customers.country_id中。
以src開頭的兩個控件是連接到TADODataSets的TDataSources。您可以將數據源連接到許多不同的數據訪問控制。
好吧,我是從字面上做一些非常糟糕的編碼!謝謝指出這個查找數據庫組合框。我從未意識到它存在:D爲我節省了大量的時間和精力。 – Doomsknight
不客氣。我對Delphi有類似的功能衝擊體驗,我從1.0開始使用它。我曾經花了幾個小時寫一個函數來返回分佈在鐘形曲線上的隨機數,而不是均勻分佈。正在測試它,並注意到數據中的一些古怪。開始挖掘並找到了我所需要的randg()函數。 –
我的德爾福是有點生疏,但你應該有一些沿線 - >
comboBox.Items //A list so you can just add to it.
然後你可以把你的結果,遍歷並處理像任何其他Windows框架的問題。查看TADOQuery(或者您正在使用的任何)來獲得結果。 Delphi非常簡單,檢查對象,你可能會看到一個解決方案的具體化。
使用類似的東西:
ComboBox.Items.Assign(CountryList);
哪裏CountryList
是包含所有國家名稱的TStringList
實例。
這是填充TComboBox的最快方式。
好吧,人們通常使用數據感知控制這個 –