vs mfc 点击父窗口的按钮,弹出子窗口



转自: http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=29121609&id=3883371


MFC 点击一个对话框按钮弹出另一个对话框

vs2010中

1.在资源中添加一个对话框  右击Dialog | Insert dialog

2.在对话框上添加自己需要的按钮等控件

3.双击控件会出现一个对话框,为添加的对话框命名一个类名,例如Dlg2   自动生成.cpp和.h文件

4.在第一个对话框的.cpp文件中包含上面生成的那个.h文件

5.在第一个对话框的按钮的响应函数中添加

Dlg2 dlg2;
dlg2.DoModal();

那么点击第一个对话框的那个按钮时,就会弹出第二个对话框. 

另外介绍一下DoModa,DoModal负责对模态话框的创建和撤销。在创建对话框时,DoModal的任务包括载入对话框模板资源、调用OnInitDialog初始化对话框和将对话框显示在屏幕上。完成对话框的创建后,DoModal启动一个消息循环,以响应用户的输入。由于该消息循环截获了几乎所有的输入消息,使主消息循环收不到对对话框的输入,致使用户只能与模态对话框进行交互,而其它用户界面对象收不到输入信息。

要建立非模态对话框需要调用两个函数Create()和ShowWindow()。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章