以前都是编的没界面的东东,刚开始试着用MFC,发现在窗口里边做东西首先要对消息机制有所了解。再想高端一点,多线程也是必须的。但是到刚才,我还一直不会实现创建新的窗口。网上好多代码都用在VC6中,亲测对于我这种初学者,在VS2012创建的MFC工程中不是特别简单实用。于是经过一番研究,整理结果如下:
环境:win7 64 VS2012
从开始创建一个基于对话框的MFC程序开始说起:
之后一路确定,生成了这几个文件:(把对话框改小了一点,拖个按钮进来)
在资源里右键Dialog->添加资源,选对话框:
右键属性看其ID为:IDD_DIALOG1
为这个新建的对话框创建一个类。在此对话框上右键->添加类:
在之前一个对话框新建的按钮上双击跳到他的事件响应函数中:
首先需要在这个文件中include刚才那个类的头文件,
在响应函数中添加代码:
首先创建新建窗口类的指针,调用BOOL CDialog::Create( UINT nIDTemplate, CWnd* pParentWnd = NULL );
第一个参数为新建窗口资源的ID,第二个参数为父窗口的句柄。默认为NULL,这里用this,也可以用AfxGetMainWnd()
形如:
AfxGetMainWnd()用于获取主窗口的句柄。实际应用看需求。
至此即可创建一个新建的窗口。
/---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/
我的第一篇weblog,还有点小激动。。
/---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------/
歪日,第一次上传图片全没放上去。。。再来一次。。