以下代码手写的,不是在VS写的,没经过编译,不一定能编译哈(可能大小写错误)
void CMyDlg::Onsize(...)
{
CDialog::Onsize(0, 0, cx, cy)
if (m_hWnd != NULL &&IsWindow(m_hWnd))
{
CRect rtClient
GetClientRect(&rtClient)
CRect rtWindow
rtWindow.right = rtClient.right - 10
rtWindow.left = rtWindow.right - 65
rtWindow.bottom = rtClient.bottom - 20
rtWindow.top = rtWindow.bottom - 25
m_wndMyEdit.MoveWindow(rtWindow)
}
}
不应该是这样的呀,我试过用WM_SIZE消息为两个变量赋值,用于计算子窗口的大小,如果像你说的不就显示不了那样设计的子窗口了?我感觉是运行后会直接接受一个WM_SIZE消息,之后改变窗口大小才收到WM_SIZE消息。
VS2010中的WM_INITDIALOG添加方法:要添加WM_INITDI,先选择你的对话框 - 右键- 类向导- 虚函数- 找到OnInitDialog()双击加入- 编辑代码 OK
VS2010中取消了WM_INITDIALOG
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)