mfc如何呼叫自己的對話方塊,MFC如何呼叫自己的對話方塊

2021-12-19 15:01:35 字數 1880 閱讀 9551

1樓:匿名使用者

先在類檢視中右鍵,新建一個對話方塊類,然後向上面說的建立一個物件,呼叫domodal,也可以用指標呼叫,但這建立的時模態對話方塊,可以用creat函式,showwindow函式建立非模態對話方塊例如

if(!iswindow(m_student.m_hwnd)) //建立並顯示非模態對話方塊

m_studeng.showwindow(sw_show);

*/cbook book; //建立並顯示模態對話方塊方法1

book.domodal();

/* cbook *pbook =new cbook(); //建立並顯示模態對話方塊方法2

pbook->domodal();

delete pbook;*/

2樓:

雙擊對話方塊以外的區域先對你的對話方塊建立一個類

然後在你要呼叫的檔案裡包含你對話方塊類的.h檔案,然後在呼叫的函式裡先定義一個該對話方塊類的物件,然後用domal函式就可以了

3樓:

先雙擊對話方塊類資源建立自己的對話方塊類

然後cmydlg(建立自己的對話方塊類)

cmydlg dlg;

dlg.domodal();

4樓:

利用對話方塊類資源建立自己的對話方塊

然後建立對話方塊類cmydlg

在呼叫的地方建立對話方塊類物件cmydlg dlg;

然後dlg.domodal();

ps.在mfc裡面有些類有建構函式,有些沒有,這是為啥呢?有方法每個類都有一個建構函式與解構函式?

在c++中類的建構函式如果你沒有定義,系統可以自動生成一個無引數的建構函式,建構函式不一定是一個,可以有多個的,看你的需要罷了。

5樓:匿名使用者

[code=c]/c++cyourdialog::oninitdialog()

[/code]

mfc中如何在一個對話方塊中呼叫另外一個對話方塊的函式

6樓:幸巴達

你可以把主對話方塊類的指標傳給新對話方塊.

通過這個指標呼叫主對話方塊的東西.

假設主對話方塊為cmaindlg,新對話方塊為cchilddlg;

// cchilddlg 呼叫主對話方塊的doother函式;

// 當然非模態對話方塊等其他任何對話方塊也可以這樣做.

class cmaindlg

void doother(){}

};class cchilddlg

cchilddlg():m_pmain(null){}};

7樓:走出憧憬

沒個對話方塊就是一個類啊 你在這個對話方塊類裡面定義一個主對話方塊的物件,然後就可以用該物件呼叫主對話方塊的函式了。

8樓:匿名使用者

postmessage是win32裡常用的做法,可以將所需要的所有資料(包括函式地址)封裝到一個struct的結構裡.

"走出憧憬"的做法不可行,這種方法無法獲得主視窗的執行環境,也就是無法使用在主視窗裡已經使用的一些變數的數值.

最簡單的還是"魔高丈"的做法了.只要這兩個視窗具有父子關係.

9樓:匿名使用者

使用全域性變數,再用extern外部宣告他們

10樓:匿名使用者

postmessage

11樓:魔高丈

cmasterdlg *pparent = (cmasterdlg *)getparent();

MFC,想在對話方塊裡面呼叫另對話的引數,怎麼辦呀

當然不可以,你沒法獲得對方的成員 你要獲得它執行的例項物件 2個程序的通訊,麻煩點 但是你可以通過hwnd h findwindow 視窗名字 來獲取控制代碼 cwnd w cwnd fromhandler h 然後就可以做了 例如第2個對話方塊的成員為 int a 0 給他夠找一個方法 int g...

關於VB中通用對話方塊的問題,vb通用對話方塊的問題

看你用了幾個通用對話方塊控制元件,如果是幾個命令按鈕控制一個通用對話方塊控制元件。第一次使用之後。commondialog1.filename 屬性就會記錄下來。然後在你按另存的時候。點取消或是關閉,就會提示出錯。所以在你開啟另存視窗前一定要把 commondialog1.filename 清空。即...

玩dota的時候突然跳出對話方塊

這個問題,我也遇到過,這是遊戲衝突,偶爾才會有,請lz不要放在心上,沒事的,而且這種情況只會偶爾發生在ai上,其實沒事的。這是魔獸爭霸的記憶體溢位錯誤,一般來說,出現這個錯誤要麼就乙個人出,要麼全部人都出現,你這種情況我還真不了解。出現這種情況一般是魔獸的地圖有bug,造成了記憶體溢位。比如說玩dota...