全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1158
推到 Plurk!
推到 Facebook!

想請教自訂vcl的TabOrder屬性

尚未結案
g9221712
高階會員


發表:145
回覆:344
積分:162
註冊:2006-07-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-10-17 11:13:38 IP:220.134.xxx.xxx 訂閱
各位前輩及版主大人:
想請教自訂vcl的TabOrder屬性,一些概念問題? 雖然我已經達到我要的目的。
話說從頭:
因為自己寫了一個複合元件的自訂元件Lable DBEDIT Button ,想說簡化資料編輯頁面的撰寫,寫了後總有一關一關的挑戰在等著
元件特性寫的差不多了,卻發現拉到自訂元件拉到Form上後,屬性表內無TabOrder屬性,本想說只要加入一TabOrder然後多一個FTabOrder
去紀錄該複合元件的TabOrder屬性,但是不寫還好,寫起來後,才發現原來自己觀念一塌糊塗,因為我寫了Set_TabOrder和Get_TabOrder
去操作FTabOrder欄位,屬性表示出現這個屬性可以看到並且操作,但是卻無法影響真正的TabOrder順序,也就是no use(台語所說得"無三小路用!")
沮喪之餘,記得KTOP前輩,曾經一再提醒,不要只要一直問問題,其實答案都在你的電腦中(C:\Program Files\Borland\Delphi7\Source\Vcl)
後來我就找了元件盤上註明的LabeledEdit(有前輩說這個範例是典型的複合元件),好在我沒忘記,不然我真的要哭了!
痛苦的事情又發生了,我參考了Borland vcl LabeledEdit的程式碼,發現繼承關係為 TLabeledEdit = class(TCustomLabeledEdit)
->TCustomLabeledEdit = class(TCustomEdit) ->TCustomEdit = class(TWinControl) ,哇塞!真漂亮的繼承規劃,我的都是單一方式繼承
物件的祖先只有TWinControl(真想銷毀自己撰寫的元件!),我看TCustomEdit 這一層的宣告"灰熊"簡單,人家什麼都沒寫就是寫了(或者是寫了我看不出來)
,published很簡單的一行property TabOrder; ....這...只有一行,昏倒中,那他存放的TabOrder值會在哪裡,腦容量太小,我心想,會不會是放在TWinControl
的心裡,當然我將自己一大堆混亂的程式碼,Set_TabOrder和Get_TabOrder移除後,心想說,不會吧!人家寫一行property TabOrder就是可以動了起來,我的呢?
心中的最後一點自信心終於潰堤(2006/10/16凌晨Ktop一樣斷線中..一樣連不上!)....這一夜我失眠了! 想起了...世界上最遙遠的距離....
不是 生與死而是 我就站在妳前面 妳卻不知道我愛妳(Delphi我真的很愛你!你說話啊!) 世界上最遙遠的距離....不是 明明無法抵擋這一股氣息 卻還得故意裝
作毫不在意(我快起肖了! 到底要怎麼弄才會有TabOrder!).....
就在愛恨交雜,欲走還留之際,我看到了一行,我完全搞不懂的代碼,FreeNotification(Self);,這是什麼!不過人家LabeledEdit的Create有寫到,老師說不會也要
抄起來,所以我就給他放到自己的複合元件內的Create,話說...一時傾盆大雨、雷電交加,竟然可以用了! 為什麼? 為什麼? 我想不透,肚子搞大了,我一樣
不知道為什麼? 懇請前輩和版主大大,給予指正!萬分感謝,叩首!
(我上述的胡言亂語,您就大人不計小人過,寫程式真的會讓人起肖!)
KTOP 不要在斷線啦!這樣我就失去依靠~嗚嗚!
------
「人們所以覺得寂寞,是因為他們會築牆,卻不會搭橋。」
程式寫的越久,卻發現自己越來越不會寫程式!
系統時間:2024-05-05 7:26:41
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!