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

Form問題

答題得分者是:tech_state
game
一般會員


發表:25
回覆:32
積分:11
註冊:2002-10-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-05-03 02:02:11 IP:218.165.xxx.xxx 未訂閱
我在製作開啟Form時 出現以下錯誤 "Cannot make a visble windows model" 請高手幫幫初學的我 下面是我的設定 Form1如下 FormStyle->fsMDIForm; WindowsState->wsMaximized; Form2如下 FormStyle->fsMDIChild; WindowsState->wsMaximized; ======================================= void __fastcall Tindex::N2Click(TObject *Sender) { TForm2 *Form2; try { Form2 = new TForm2(Application); Form->ShowModal(); delete Form2; } catch (Exception &exception) { delete Form2; Application->ShowException(&exception); } } 為何不行 但是如果我把Form2的FormStyle改為fsNormal就可以 way 溝通網路情、連接數位心
------
溝通網路情、連接數位心
tech_state
版主


發表:44
回覆:638
積分:641
註冊:2003-02-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-05-03 10:06:25 IP:203.204.xxx.xxx 未訂閱
引言: 我在製作開啟Form時 出現以下錯誤 "Cannot make a visble windows model" 請高手幫幫初學的我 下面是我的設定 Form1如下 FormStyle->fsMDIForm; WindowsState->wsMaximized; Form2如下 FormStyle->fsMDIChild; WindowsState->wsMaximized; ======================================= void __fastcall Tindex::N2Click(TObject *Sender) { TForm2 *Form2; try { Form2 = new TForm2(Application); Form->ShowModal(); delete Form2; } catch (Exception &exception) { delete Form2; Application->ShowException(&exception); } } 為何不行 但是如果我把Form2的FormStyle改為fsNormal就可以 way 溝通網路情、連接數位心
game, 您好 刪除
Form->ShowModal(); 
即可 ======================= 是非終日有,不聽自然無 天下本無事,庸人自擾之
game
一般會員


發表:25
回覆:32
積分:11
註冊:2002-10-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-05-03 13:05:40 IP:218.165.xxx.xxx 未訂閱
謝謝tech_state! 我有試過將Form->ShowModal();刪除 但是Form2開啟後馬上就關掉! 可以在幫我嗎? 溝通網路情、連接數位心 發表人 - game 於 2003/05/03 13:06:48
------
溝通網路情、連接數位心
tech_state
版主


發表:44
回覆:638
積分:641
註冊:2003-02-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-05-03 14:53:21 IP:203.204.xxx.xxx 未訂閱
引言: 謝謝tech_state! 我有試過將Form->ShowModal();刪除 但是Form2開啟後馬上就關掉! 可以在幫我嗎? 溝通網路情、連接數位心 發表人 - game 於 2003/05/03 13:06:48
game, 您好 Form2會開啟後馬上關掉是因為您new了之後馬上就delete 請在delete Form2之前 增加以下的code
 
while(Form2->Visible == mrOk) 
{
   // 放入您要處理的code,但是請記得做break,不然會成為一個無窮迴圈喔
}
    =======================
<>是非終日有,不聽自然無
<>天下本無事,庸人自擾之
        
game
一般會員


發表:25
回覆:32
積分:11
註冊:2002-10-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-05-03 18:35:02 IP:218.165.xxx.xxx 未訂閱
在delete Form2之前 增加code while(Form2->Visible == mrOk)  {    這裡我該放什麼code呢? } Sorry!我剛學BCB 所以不太了解 但是我試過 while(Form2->Visible == mrOk) { Form2->ShowModal(); break; } 不行ㄋㄟ! 還有,我有看過別人的範例 if (RUNTF(0,"AMxtzl")==False) /*RUNTF是什麼意思呢?還有為什麼會有個0, Amxtzl我知道是MainMenu1->Items->Name*/ return; try { if (OpenForm(Form2)==False) Form2=new TForm2(Application); } catch(...) { delete Form2; } } Sorry! 我剛學BCB所以問題會比較多! 希望您不會覺得我很笨很麻煩! 溝通網路情、連接數位心 發表人 - game 於 2003/05/03 18:36:28
------
溝通網路情、連接數位心
tech_state
版主


發表:44
回覆:638
積分:641
註冊:2003-02-10

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-05-03 23:00:05 IP:203.204.xxx.xxx 未訂閱
引言: 在delete Form2之前 增加code while(Form2->Visible == mrOk) { 這裡我該放什麼code呢? } Sorry!我剛學BCB 所以不太了解 但是我試過 while(Form2->Visible == mrOk) { Form2->ShowModal(); break; } 不行ㄋㄟ! 還有,我有看過別人的範例 if (RUNTF(0,"AMxtzl")==False) /*RUNTF是什麼意思呢?還有為什麼會有個0, Amxtzl我知道是MainMenu1->Items->Name*/ return; try { if (OpenForm(Form2)==False) Form2=new TForm2(Application); } catch(...) { delete Form2; } } Sorry! 我剛學BCB所以問題會比較多! 希望您不會覺得我很笨很麻煩! 溝通網路情、連接數位心 發表人 - game 於 2003/05/03 18:36:28
game, 您好 請問題Form2的用途是做什麼的呢? 如果是附掛在Form1的程式 例如:像Word那樣,有一個主畫面,再有無數個小視窗的話 那我建議您修改一下程式
void __fastcall Tindex::N2Click(TObject *Sender)
{
TForm2 *Form2;
try
{
Form2 = new TForm2(Application);
//delete Form2;
}
catch (Exception &exception)
{
delete Form2;
Application->ShowException(&exception);
}
}
 
紅色的部分不要 在Form2中OnClose的Event裡增加一行程式
Action = caFree; 
如此一樣可以釋放Form2的記憶體 P.S.之前說的那個方法請暫時擱置,那是另一種用途 至於>是非終日有,不聽自然無 <>天下本無事,庸人自擾之
game
一般會員


發表:25
回覆:32
積分:11
註冊:2002-10-02

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-05-04 04:20:37 IP:218.165.xxx.xxx 未訂閱
引言: game, 您好 請問題Form2的用途是做什麼的呢? 如果是附掛在Form1的程式 例如:像Word那樣,有一個主畫面,再有無數個小視窗的話 那我建議您修改一下程式
void __fastcall Tindex::N2Click(TObject *Sender)
{
TForm2 *Form2;
try
{
Form2 = new TForm2(Application);
//delete Form2;
}
catch (Exception &exception)
{
delete Form2;
Application->ShowException(&exception);
}
}
 
紅色的部分不要 在Form2中OnClose的Event裡增加一行程式
Action = caFree; 
如此一樣可以釋放Form2的記憶體 P.S.之前說的那個方法請暫時擱置,那是另一種用途 至於>是非終日有,不聽自然無 <>天下本無事,庸人自擾之 < face="Verdana, Arial, Helvetica"> 謝謝您! 我用您的方式已經ok了! 至於Form我的用途是想自己寫一個客戶管理 方便自己使用! 以前我是使用Delphi 但是我想自己學C 因為C有好多地方都用的到 雖然我完全沒有學過C 使用BCB也才第二天 不!因該算是第三天^_^ 但是跟Delphi的操作方式是一樣的 也希望自己能跟上進度! PS:大家可不要笑我是菜鳥唷!^_^ 溝通網路情、連接數位心
------
溝通網路情、連接數位心
系統時間:2024-05-08 3:45:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!