为什么在用Microsoft visual studio 6.02008时,经常弹出这个窗口,导致我创建的窗口消失了,菜鸟求教!谢谢

人人网 - 抱歉
哦,抱歉,好像看不到了
现在你可以:
看看其它好友写了什么
北京千橡网景科技发展有限公司:
文网文[号··京公网安备号·甲测资字
文化部监督电子邮箱:wlwh@··
文明办网文明上网举报电话: 举报邮箱:&&&&&&&&&&&&MFC主窗口出现之前弹出子窗口与子窗口交互问题
作者:褚湘鸣 转载需注明出处
Microsoft Visual Studio 2013
MFC App Wizard
1.&&&&&&在MFC主窗口弹出来之前弹出一个子窗口
2.&&&&&&该子窗口可以自定义一些数据域进行操作
3.&&&&&&应用场景:app的hello界面,初始化等,本例中是在子窗口中选择身份,在主程序中展现出来
1.&&&&&&利用MFC App Wizard 创建一个但文档对话框模式的app。主窗口类增加一个自定义成员变量,用于接收子窗口中传来的消息。本例中使用的是自定义类Person的对象Hero的数据域Identity(private)
2.&&&&&&利用Class Wizard 创建一个CDialogEx 的子类,暂且名为NewDialog,NewDialog中增加一个自定义的数据域:m_Identity,用来表示
3.&&&&&&在资源视图中,利用可视化编程设计NewDialog对话框,如:
4.&&&&&&点按某个按钮后,把相应的事件写出来:
如双击“领主Lord”,弹出程序,写入:
1.&&&&&&OnBnClicked*****的意思就是在这个按钮被单击的事件发生后,需要执行的程序
2.&&&&&&CDialog::OnOK()函数是CDialog类及其子类所代表的(模式)对话框中都必须有的“确定”按钮被单击后执行的程序,属于默认程序。因为本程序中点按后必须关闭现有对话框,所以增加这一句。
3.&&&&&&LORD是我在另一个头文件中定义的宏,不用管
5.&&&&&&上述程序写完后(很简单吧),子窗口就实现了如下功能:通过点按某个按钮,使子窗口对象的一个成员变量:m_Identity有了相应的值
6.&&&&&&接下来,就要实现在主窗口出来之前弹出子窗口。在“主窗口类名.cpp”(本例为MBDlg.cpp)中找到OnInitDialog()函数,添加如下代码:
1.&&&&&&不是在InitInstance()里加,网上有的教程是错的
2.&&&&&&帮助大家理清逻辑:在这个地方添加的代码执行的时间,是在主窗口定义之后,显示之前,也就是说此时主窗口的对象(类的实例)已经存在,而这段程序的位置又在这个类的成员函数内部,所以成员变量(对象)Hero也已经存在,可以直接引用;SetDlgItemText()函数也是在主窗口的内部使用,所以不用指定窗口的id(该函数原本有三个参数,第一个是指定窗口的指针,但是现在只用两个就行了)
3. & & 若想在某一个对话框点了“退出”或者“取消”后就退出全部程序,可以添加如下代码
if(dlg.DoModal()==IDOK){...}
CDialog::OnCancel(); &
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:287次
排名:千里之外Microsoft Visual Studio 2008 创建c++ win32控制台应用时为什么出现 已取消到该_百度知道装VS2008时弹出窗口:Visual Studio Just-In-Time Debugger 当按不调试时,安装出错失败,急救高手解决。_百度知道}

我要回帖

更多关于 visual studio 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信