{
CFormView::OnInitialUpdate()
GetParentFrame()->RecalcLayout()
ResizeParentToFit()
}
在CFormView中,通过跟踪可发现程序不会去调用CDialog::OnInitDialog(),在CFormView::Create(**)中有如下语句CreateDlg(m_lpszTemplateName, pParentWnd),既对话框通过非模态创建,创建期间会发送WM_CREATE消息,但初始化代码不能写在OnCreate函数里面,因为此时对话框还没创建完毕,在所有的创建工作结束后,既CFormView::Create(**)执行完毕后系统会调用OnInitialUpdate(),这时候就可以加入你的初始化代码了
先创建一个单文档窗体工程,然后在其视类中,通过AppWizard为该类添加WM_CREATE消息的响应函数,最后在这个响应函数(OnCreate函数)中,调用SetClassLong函数修改窗口的背景。代码如下:int CStyleView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CView::OnCreate(lpCreateStruct) == -1)
return -1
// TODO: Add your specialized creation code here
SetClassLong(m_hWnd, GCL_HBRBACKGROUND, (LONG)GetStockObject(BLACK_BRUSH)) // 通过第三个参数将窗口颜色修改为黑色的
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)