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

有關Create Form的問題

尚未結案
theee
一般會員


發表:5
回覆:5
積分:2
註冊:2007-05-25

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-05-25 15:31:03 IP:59.120.xxx.xxx 訂閱
大家好 
我的project中有兩個Form - Form1 和 Form2
Form2是利用Form1 按下按鈕後才會產生的

但我現在遇到兩個問題

1. <textarea class="cpp" rows="10" cols="60" name="code"> 我在Form2 的CreateForm函式中讀出ini檔中設定的值 想要設定Form2初始的位置 void __fastcall TForm2::FormCreate(TObject *Sender) { Myini2 = new TIniFile(ExtractFilePath(Application->ExeName) "Setting.ini" ); Form2->Height = Myini2->ReadInteger("Setting", "Height", 400); Form2->Width = Myini2->ReadInteger("Setting", "Width", 250); Form2->Left = Myini2->ReadInteger("Setting", "Left",600); Form2->Top = Myini2->ReadInteger("Setting", "Top",500); } 大約code是這樣 但是我利用這樣設出來的 Form都不對 意思是他都不會出現在我設定的位址上 但我利用Debug 模式看讀出來的值都對 所以我想可能是Project在一開始Run的時候就會先跑一次Form1 Form2的初始化了 因此 我把程式 WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { try { Application->Initialize(); Application->Title = "Memo"; Application->CreateForm(__classid(TForm1), &Form1); Application->CreateForm(__classid(TForm2), &Form2); Application->Run(); } 中的 Application->CreateForm(__classid(TForm2), &Form2); 註解掉 希直接透過 void __fastcall TForm1::N1Click(TObject *Sender) { Form2 = new TForm2(Application); Form2->ShowModal(); } 在Form1中的函式在創建出Form2 而這樣的方法會發生 Form2 = new TForm2(Application); 參數不能給Application 我也不知道要給什麼 >"< 我的問題有兩個 1. 為什麼Form2的設定沒辦法達成呢? 2. 我想瞭解一下 我改方法之後我對WinForm產生的流程哪裡觀念錯誤 使我的程式沒辦法正確執行 謝謝大家的幫忙 </textarea>
harpist
資深會員


發表:3
回覆:251
積分:430
註冊:2002-10-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-05-25 15:58:20 IP:211.74.xxx.xxx 未訂閱
Form2 = new TForm2(Application); 是沒有問題的。
你的程式會發生錯誤在這一行是因為你在TForm2::FormCreate 對Form2
作位置初始參數指定的動作,在Create 未完成前Form2 還未初始化完成,
所以Form2 = NULL。
請把參數初始指定動作移到Create完成後,如OnActivate、OnShow...。
------
~§~迷時師渡,悟了自渡~§~
theee
一般會員


發表:5
回覆:5
積分:2
註冊:2007-05-25

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-05-25 16:13:19 IP:59.120.xxx.xxx 訂閱
哈哈  解決了

真的很謝謝你!!!
系統時間:2024-05-06 16:22:42
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!