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

如何利用PostMessage 次Form來關閉主Form

答題得分者是:GrandRURU
l90425
初階會員


發表:95
回覆:152
積分:49
註冊:2008-04-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-04-24 10:08:22 IP:59.125.xxx.xxx 訂閱
如何利用PostMessage 次Form1來關閉主Form2呢
有辦法嗎
請大大告訴小弟在Button1Click裡面該填什麼
小弟會非常的感謝大大你的回答-謝謝

次Form1
[code cpp]
//---------------------------------------------------------------------------

#include
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
????????????
}
//---------------------------------------------------------------------------

[/code]
------
-謝謝大大熱心的回覆!謝謝!
編輯記錄
l90425 重新編輯於 2008-04-24 18:34:52, 註解 無‧
l90425 重新編輯於 2008-04-24 18:35:25, 註解 無‧
hipig
高階會員


發表:31
回覆:75
積分:111
註冊:2007-01-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-04-24 11:28:23 IP:140.126.xxx.xxx 未訂閱
你可以把它藏起來但不能關掉
基本上關掉主form是一種很奇怪的行為
主form必然要活著不過並不一定要優先顯示
l90425
初階會員


發表:95
回覆:152
積分:49
註冊:2008-04-03

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-04-24 11:44:12 IP:59.125.xxx.xxx 訂閱

===================引 用 hipig 文 章===================
你可以把它藏起來但不能關掉
基本上關掉主form是一種很奇怪的行為
主form必然要活著不過並不一定要優先顯示



因為我的主form2放在最後而次form1放在前面
但是我想要做出一個程式
就是可以讓使用者選擇是否還要繼續執行主form2的程式
而不是要一定執行主form2才可以關閉整個程式-謝謝
能解決嗎
------
-謝謝大大熱心的回覆!謝謝!
GrandRURU
站務副站長


發表:240
回覆:1680
積分:1874
註冊:2005-06-21

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-04-24 22:03:01 IP:220.139.xxx.xxx 未訂閱
既然如此,那就在Form2->Showmodel(Form1)的下一行再加上Form2->close()即可。
我還是搞不清楚為什麼要轉來轉去的開開關關……

===================引 用 l90425 文 章===================
因為我的主form2放在最後而次form1放在前面
但是我想要做出一個程式
就是可以讓使用者選擇是否還要繼續執行主form2的程式
而不是要一定執行主form2才可以關閉整個程式-謝謝
能解決嗎
l90425
初階會員


發表:95
回覆:152
積分:49
註冊:2008-04-03

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-04-24 23:59:55 IP:59.125.xxx.xxx 訂閱

===================引 用 GrandRURU 文 章===================
既然如此,那就在Form2->Showmodel(Form1)的下一行再加上Form2->close()即可。
我還是搞不清楚為什麼要轉來轉去的開開關關……


測試成功
因為我想測試就算是次Form也可以有能力能關閉整個程式而已
不過真的很感謝大大的指導

主Form
[code cpp]
//---------------------------------------------------------------------------

#include
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm2::Button1Click(TObject *Sender)
{
Form1->ShowModal();
}
//---------------------------------------------------------------------------

[/code]

次Form
[code cpp]
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
Form2->Show();
Form2->Close();
}
//---------------------------------------------------------------------------

[/code]
------
-謝謝大大熱心的回覆!謝謝!
l90425
初階會員


發表:95
回覆:152
積分:49
註冊:2008-04-03

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-04-25 00:10:47 IP:59.125.xxx.xxx 訂閱
小弟再提供一個方法就是可以利用PostQuitMessage(0); 也可以成功-謝謝大大
------
-謝謝大大熱心的回覆!謝謝!
系統時間:2024-04-18 11:32:35
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!