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

請問利用fsNormal引用了fsMDIForm後 如何自動將fsNormal的視窗關閉

答題得分者是:herbert2
darren99168
一般會員


發表:7
回覆:9
積分:3
註冊:2016-05-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2016-09-05 13:39:03 IP:114.35.xxx.xxx 訂閱


form2是fsMDIForm
要如何做到 Form2 打開後 Form1自動關閉

目前在 From1內做了按鈕BUTTONON控制開啟Form2
請前輩們幫忙解答一下,謝謝^^

procedure Tform.Button1Click(Sender: TObject);
begin
TForm.Create(self).ShowModal;

end;
編輯記錄
darren99168 重新編輯於 2016-09-05 17:48:44, 註解 無‧
darren99168 重新編輯於 2016-09-05 17:51:14, 註解 無‧
darren99168 重新編輯於 2016-09-05 17:51:59, 註解 無‧
GrandRURU
站務副站長


發表:233
回覆:1645
積分:1730
註冊:2005-06-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2016-09-05 16:37:17 IP:59.120.xxx.xxx 未訂閱
Form 順序反了
Main Form 如果被關閉,Application 就會關閉
應該是在 Main Form 裡觸發 Login Form 的顯示

===================引 用 darren99168 文 章===================
form2是fsMDIForm
要如何做到 Form2 打開後 Form1自動關閉

目前在 From1內做了按鈕BUTTONON控制開啟Form2
請前輩們幫忙解答一下,謝謝^^

procedure Tlogfrm.Button1Click(Sender: TObject);
begin
TForm.Create(self).ShowModal;

end;
darren99168
一般會員


發表:7
回覆:9
積分:3
註冊:2016-05-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2016-09-05 17:57:24 IP:114.35.xxx.xxx 訂閱
感謝副站長GrandRURUform1是fsNormal,因為 我是想做成 一個登入頁面 LOGIN 驗證完後 才開啟MDI父頁面,之後所有MDI子頁面呈現在MDI父頁面之下!!
不知為什麼我文章最重要的第一句不見了 呵呵
===================引 用 GrandRURU 文 章===================
Form 順序反了
Main Form 如果被關閉,Application 就會關閉
應該是在 Main Form 裡觸發 Login Form 的顯示

===================引 用 darren99168 文 章===================
form2是fsMDIForm
要如何做到 Form2 打開後 Form1自動關閉

目前在 From1內做了按鈕BUTTONON控制開啟Form2
請前輩們幫忙解答一下,謝謝^^

procedure Tlogfrm.Button1Click(Sender: TObject);
begin
TForm.Create(self).ShowModal;

end;
herbert2
尊榮會員


發表:58
回覆:632
積分:873
註冊:2004-04-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2016-09-05 18:15:32 IP:202.39.xxx.xxx 訂閱
您的需求應是與我的作業相似,但我是用 C++Builder,請您自行參考修改。
[code cpp]
// X1234.cpp X1234.exe
TLogin *Login; // 帶 Login Password 詢問的 Form 的元件
//----------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try {
Application->Initialize(); // *.bpl MDIForm 帶一群 MDIChildForm
Application->Title = "xx系統";
Login = new TLogin(Application);
Application->CreateForm(__classid(TMainform), &Mainform);
if (!Login->EnterPassForm()) {
delete Login;
return 0;
}
Application->Run();
} catch (Exception &exception) {
Application->ShowException(&exception);
}
delete Login;
return 0;
}
//----------------------------------------------
[/code]

程式碼區縮排似乎不正常,請自行調整了.
編輯記錄
herbert2 重新編輯於 2016-09-05 18:17:50, 註解 無‧
herbert2 重新編輯於 2016-09-05 18:18:29, 註解 無‧
herbert2 重新編輯於 2016-09-05 18:19:44, 註解 無‧
aftcast
站務副站長


發表:81
回覆:1482
積分:1762
註冊:2002-11-21

發送簡訊給我
#5 引用回覆 回覆 發表時間:2016-09-06 09:49:28 IP:59.125.xxx.xxx 訂閱
我經過補充一下: (因為發文者應該是寫delphi的,所以herbert兄的也許看不太懂)

我依稀記得 (因有一陣子沒寫),我都是放在 Application.CreateForm 的前面一行(或如herber一樣的下一行),然後在那裡ShowModal 一個 formx,然後如果正確就formX free 掉。如果不正確就 formx free 掉並且 return 0

就幾乎像herbert兄的程式,只是我用文字說明了一下。 :)

------



蕭沖
--All ideas are worthless unless implemented--

C++ Builder Delphi Taiwan G+ 社群
http://bit.ly/cbtaiwan
darren99168
一般會員


發表:7
回覆:9
積分:3
註冊:2016-05-06

發送簡訊給我
#6 引用回覆 回覆 發表時間:2016-09-06 13:00:00 IP:114.35.xxx.xxx 訂閱
還在研究中~~初學者看不太懂 呵呵
感謝各位前們們的解答,謝謝
===================引 用 Ktop_Robot 文 章=================== 提問者您好:


以上回應是否已得到滿意的答覆?


若已得到滿意的答覆,請在一週內結案,否則請在一週內回覆還有什麼未盡事宜,不然,
將由版主(尚無版主之區域將由副站長或站長)採自由心證,選擇較合適之解答予以結案處理,
被選上之答題者同樣會有加分獎勵,同時發問者將受到扣 1 分的處分。不便之處,請見諒。


有問有答有結案,才能有良性的互動,良好的討論環境需要大家共同維護,感謝您的配合。
GrandRURU
站務副站長


發表:233
回覆:1645
積分:1730
註冊:2005-06-21

發送簡訊給我
#7 引用回覆 回覆 發表時間:2016-09-06 14:12:24 IP:59.120.xxx.xxx 未訂閱
Display a LogIn / Password Dialog Before the Main Form is Created
===================引 用 darren99168 文 章===================
還在研究中~~初學者看不太懂 呵呵
感謝各位前們們的解答,謝謝
===================引 用 Ktop_Robot 文 章=================== 提問者您好:


以上回應是否已得到滿意的答覆?


若已得到滿意的答覆,請在一週內結案,否則請在一週內回覆還有什麼未盡事宜,不然,
將由版主(尚無版主之區域將由副站長或站長)採自由心證,選擇較合適之解答予以結案處理,
被選上之答題者同樣會有加分獎勵,同時發問者將受到扣 1 分的處分。不便之處,請見諒。


有問有答有結案,才能有良性的互動,良好的討論環境需要大家共同維護,感謝您的配合。
系統時間:2017-07-27 14:49:47
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!