MDI Form create 再一問..^^" |
答題得分者是:T.J.B
|
fly_dream
一般會員 ![]() ![]() 發表:4 回覆:0 積分:0 註冊:2002-09-15 發送簡訊給我 |
|
chih
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
|
T.J.B
版主 ![]() ![]() ![]() ![]() ![]() 發表:29 回覆:532 積分:497 註冊:2002-08-14 發送簡訊給我 |
引言: 再請問一下..^^" 在..MDI Form 中, 用 tform2.Create(self);<--建立Form(Child) 有辦法能判斷,若form2 沒建立,才會create 若已建立則不再被建立呢? 若用..showmodal; 是否還能再點選主Form 的功能表呢? 因為..我試過..但卻..點一次功能表就開個Form ..會一直開..^^" 請問.....該怎麼辦呢...?^^" sorry...我是 Delphi 的初學者..^^" thx ...^_^不可以用Showmodal 這樣就跟SDIForm一樣了 就失去MDIForm的意義了 提供你一個做法 你先在MDIForm設定二個全域變數 就是在implementation 這個字上面宣告 var isChildform_Open :boolean; //用來判斷Childform是否開啟的布林變數 select_page : integer;//用來記住User按的按鍵是哪一個?該秀哪個form 在你MDIForm要去Create Childform 的事件裡 加入這段程式碼 select_page := (sender as Tbutton).tag; if not isChildform_Open then //表示該ChildForm尚未被建立出來 begin form2:=tform2.Create(self);<--建立Form(Child) isChildform_Open := True; //設成True表示該ChildForm已被建立出來了 end; form2.show; 然後在每個Childform的Form Close事件寫 isChildform_Open := False;//表示該ChildForm被關閉 Action := cafree;//MDIForm關閉一定要用此方式 這樣就ok了 要注意幾點: 1:將你在MDIForm上的要去Create ChildForm的每一個按鍵其屬性Tag 都要設為不一樣 2:MDIForm要去Use 全部的ChildForm 相對的 每個ChildForm 要去Use MDIForm 就醬子 < >< > 回首來時路 也無風雨也無晴~~@.@ 發表人 - T.J.B 於 2002/09/20 10:18:58 發表人 - T.J.B 於 2002/09/20 15:28:13 發表人 - T.J.B 於 2002/09/20 15:52:28
------
天行健 君子當自強不息~~@.@ |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |