線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1516
推到 Plurk!
推到 Facebook!

DBLookup ListFieldIndex 的問題

尚未結案
jzchen
一般會員


發表:8
回覆:21
積分:5
註冊:2002-06-01

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-30 11:24:48 IP:61.30.xxx.xxx 未訂閱
各問大大,先進 你們好!! 小弟有個問題一直不知道該早麼解決比較好?? 就是有關DBLookupComboBox中 ListFieldIndex問題. 例如:小弟在某個編號中需要去其他Table去帶出中文 利用上述的元件的去達成 假設:Table TA 及 Table TB 以 NO去關連 在TA的UI介面時去帶出TB的中文 編號 NO, 編號中文 NO_NA 那我設定的是 DataField: NO DataSource:TA KeyField : NO ListField: NO;NO_NA ListFieldIndex: 1 ListSource:TB 此時下拉時索引便是以(NO_NA)中文的快速搜尋 但是小弟希望可以打(NO)數字去快速搜尋,但是所顯示的又要是(NO_NA) 這樣的話該怎麼解決比較好!!
Tony-Tang
一般會員


發表:7
回覆:17
積分:9
註冊:2003-10-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-30 11:45:16 IP:61.219.xxx.xxx 未訂閱
jzchen 你好 個人建議是在 DBLookupComboBox 前面擺一個 TEdit, 這 TEdit 主要是輸入 NO,在 TEdit OnExit 時在將輸入的值 傳給 DBLookupComboBox 的 KeyValue 屬性,也可在此 Event 檢查所輸入的值是否正確。此外 InfoPower 有物件可達到你的 要求,不過要付費就是了,以上純屬個人意見,僅供參考。
jzchen
一般會員


發表:8
回覆:21
積分:5
註冊:2002-06-01

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-30 12:00:07 IP:61.30.xxx.xxx 未訂閱
感謝Tony-Tang兄您的回覆!! 但是您好像誤解我的意思了!! 小弟是希望 >
jzchen
一般會員


發表:8
回覆:21
積分:5
註冊:2002-06-01

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-05 10:47:45 IP:61.30.xxx.xxx 未訂閱
請問各位大大!! 有沒有其他辦法讓DBLookupComboBox 的下拉Index跟ListFieldIndex分開! 各自設定!!    麻煩各位大大幫忙想想辦法!! 謝謝!!
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-03-05 18:18:21 IP:61.71.xxx.xxx 未訂閱
引言: 各問大大,先進 你們好!! 小弟有個問題一直不知道該早麼解決比較好?? 就是有關DBLookupComboBox中 ListFieldIndex問題. 例如:小弟在某個編號中需要去其他Table去帶出中文 利用上述的元件的去達成 假設:Table TA 及 Table TB 以 NO去關連 在TA的UI介面時去帶出TB的中文 編號 NO, 編號中文 NO_NA 那我設定的是 DataField: NO DataSource:TA KeyField : NO ListField: NO;NO_NA ListFieldIndex: 1 ListSource:TB 此時下拉時索引便是以(NO_NA)中文的快速搜尋 但是小弟希望可以打(NO)數字去快速搜尋,但是所顯示的又要是(NO_NA) 這樣的話該怎麼解決比較好!! < face="Verdana, Arial, Helvetica"> 有一種解決方法 設置兩組DBLOOKUPCOMBOBOX, 第一組如上, 第二組的LISTFIELD為NO_NA, 其他一樣, 當你在編輯時, 以 NO輸入, 由於LISTFIELD 為NO;NO_NA, 所以下拉時可以看到中文, 這是沒有問題, 在回到POST之後, 第二組的COMBOX就可以發揮作用, 因為對應的DATAFIELD是NO, 所以原則上會與TABLE B同步, 而第二組顯示的是NO_NA, 這樣就可以看到中文 如圖一 這時兩組合併後的結果, 右側那組請設定READONLY 圖二, 我特拆開來, 可以看的更清楚 ps:不知道為何貼的圖都出不來, 請自己下載來看 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=66246(圖一) 圖二都上傳失敗 發表人 - P.D. 於 2005/03/05 18:44:43
jzchen
一般會員


發表:8
回覆:21
積分:5
註冊:2002-06-01

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-03-07 17:02:46 IP:61.30.xxx.xxx 未訂閱
引言: --------------------------------------------------------------------------------    有一種解決方法 設置兩組DBLOOKUPCOMBOBOX, 第一組如上, 第二組的LISTFIELD為NO_NA, 其他一樣, 當你在編輯時, 以 NO輸入, 由於LISTFIELD 為NO;NO_NA, 所以下拉時可以看到中文, 這是沒有問題, 在回到POST之後, 第二組的COMBOX就可以發揮作用, 因為對應的DATAFIELD是NO, 所以原則上會與TABLE B同步, 而第二組顯示的是NO_NA, 這樣就可以看到中文 如圖一 這時兩組合併後的結果, 右側那組請設定READONLY 圖二, 我特拆開來, 可以看的更清楚        ps:不知道為何貼的圖都出不來, 請自己下載來看 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=66246(圖一) 圖二都上傳失敗    發表人 - P.D. 於 2005/03/05 18:44:43 --------------------------------------------------------------------------------    感謝P.D.大大: 小弟目前也是利用類似這種方法!! 以下是小弟的方法,給P.D.大大提供一些建議!! 圖一:以中文查詢時 圖一是ㄧ般的情形,顯示中文,中文速查。 圖二:以編號查詢時 在以編號查詢時,圖二上半部是分解圖,圖二下半部是結合的樣子。 將Edit覆蓋在DBLookupComboBox上(如圖二下半部),ListField: NO+NO_NA(組合成一個欄位),Edit的寬度正好是No的長度,那看起來就有類似的效果< >,但是小弟總覺得想找ㄧ找更好的解決之道。 看來現有的物件好像都無法根本解決!!< > 不知道這是不是一定非改物件才能達到,將兩個屬性拆開!! 還是有現成的元件可以達成,但希望有原始碼可供參考!! 謝謝!!感激不盡!! Jzchen
pillar62
資深會員


發表:9
回覆:324
積分:271
註冊:2002-04-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-03-07 17:18:12 IP:210.64.xxx.xxx 未訂閱
帥哥榮你好 我剛剛試過一個方式,似乎可行喔!! 在DBLookupComboBox1的dropdown事件中,將代號放在前面名稱在後面DBLookupComboBox1.ListField := 'user_id;user_name'; 然後在closeup事件中將代號放到後面名稱放到前面就可以了喔!! DBLookupComboBox1.ListField := 'user_name;user_id'; Pillar Wang
------
Pillar Wang
jzchen
一般會員


發表:8
回覆:21
積分:5
註冊:2002-06-01

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-03-07 17:50:01 IP:61.30.xxx.xxx 未訂閱
帥哥助: 這方法好像可以耶!!........ Jzck這真是太神奇了!! 動態改ListFieldIndex不行!! 但是改ListField竟然可以!!.....< > 哈哈.....我怎麼沒 > 不是啦!!....因為他的方法比較方便,實際!!< > 但是還是謝謝大家啦!
系統時間:2024-06-28 18:53:58
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!