物件型別判斷與轉換問題 |
缺席
|
g9221712
高階會員 發表:145 回覆:344 積分:162 註冊:2006-07-06 發送簡訊給我 |
物件型別判斷與轉換問題
各位前輩: 我在From中,想處理自己設計的物件的一些屬性,在表單處理上,為了捉取並判斷表單所有物件屬性,並作判斷和處理 所以我使用兩個物件一個為我自己設定的UDBEDIT一個為UCOMBOBOX,且都具備相同的DB_Field_Key_TYPE屬性 且兩個物件內的DB_Field_Key_TYPE屬性的型態皆為 TDB_Field_KEY_TYPE = (tcPrimary_Key, tcNon_Key); for i := 0 to FRM.ComponentCount - 1 do begin if FRM.Components[i] is TYaoDBEdit then begin if TYaoDBEdit(FRM.Components[i]).DB_Field_Key_TYPE = tcPrimary_Key then begin ...處理我的程序 end; end; end; 但我在為加入UCOMBOBOX的自訂UNIT單元時,編譯可以過,加入UCOMBOBOX的自訂UNIT單元後,就會出現,如附圖的錯誤 無法進行編譯(Incompatible type),但是由上述的FRM.Components[i] is TYaoDBEdit,我在執行表單的型別轉換前 我有先確認為TYaoDBEdit才進行強制型別轉換和判斷 TYaoDBEdit(FRM.Components[i]).DB_Field_Key_TYPE = tcPrimary_Key 但是,不知道為何還會出現這樣的錯誤! 懇請各位前輩給予提示,因為不知道自己這樣講清楚或不清楚,若前輩們還是無法理解我想問的問題,我可以將操作的 畫面,錄影成動畫檔,操作說明! 感謝
------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」 程式寫的越久,卻發現自己越來越不會寫程式! |
g9221712
高階會員 發表:145 回覆:344 積分:162 註冊:2006-07-06 發送簡訊給我 |
我看到版上有這樣的討論
http://delphi.ktop.com.tw/board.php?cid=35&fid=70&tid=63202 同樣是TCBnames 的型態,但一個是Combotest1 Unit 中的TCBNames 另一個卻是ComboTest2 Unit 中的TCBnames ,看起來一樣其實對Delphi來說是不一樣的型態 建議你將Combotest1的 Type TCBnames=(Cb1,Cb2,Cb3); 這行定義拿掉即可, 因為Combotest1 有uses 到Combotest2,所以其中的TCBnames會用到同樣是Combotest2裏面定義的TCBnames。 但是我因為是處理在物件內,不知道是否有無更好的解決方式! 怎麼開始覺得可以用了!又問題一堆.....
------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」 程式寫的越久,卻發現自己越來越不會寫程式! |
g9221712
高階會員 發表:145 回覆:344 積分:162 註冊:2006-07-06 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |