{
CFormView::OnInitialUpdate()
/* 加入你要的初始化代码*/
GetParentFrame()->RecalcLayout()
ResizeParentToFit()
}
在CFormView中,通过跟踪可发现程序不会去调用CDialog::OnInitDialog(),在CFormView::Create(**)中有如下语句CreateDlg(m_lpszTemplateName, pParentWnd),既对话框通过非模态创建,创建期间会发送WM_CREATE消息,但初始化代码不能写在OnCreate函数里面,因为此时对话框还没创建完毕,在所有的创建工作结束后,既CFormView::Create(**)执行完毕后系统会调用OnInitialUpdate(),这时候就可以加入你的初始化代码了
另外,团IDC网上有许多产品团购,便宜有口碑
“新建的基类是cview的对话框”,这个本身就是错误的,对话框不可能基于CView,CView本身也不能成为窗口,虽然他是CWnd继承,但使用中必须配合框架窗口,不能单独存在。对话框所谓跳转,就是调用关系,模态对话框调用和返回只有一个函数DoModal;非模态用Create和ShowWindow。
Frame里面只能加载CView或者由CView继承而来的子类,不能直接加载对话框。你可以考虑d出的方式加载对话框。或者将对话框的基类改成CFormView,在修改对应的位置,基本上就是初始化的几个消息要修改一下。
class CDlgView: public CFormView
只需要改几个消息的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)