用CWnd成员函数: GetWindowRect/GetClientRect, 后者是获取客户区的大小, 前者是整个窗口的大小. 如:
CRect rect;
GetWindowRect(&rect);
CRect成员函数:Width()和Height()返回窗口高度, 宽度.
2. 动态建立的控制, 用其父窗口的一个虚函数:PreTranslateMessage
它的参数是一个消息结构体.
比如:在View类OnCreat里加入代码:
static CButton btn;
CRect rect(10, 20, 20, 40);
btn.Creat(_T("abc"), WS_VISIBLE | BS_PUSHBUTTON, rect, 1234);
然后在View类里建立一个虚函数PreTranslateMessage
在它里面加入代码:
if (pMsg->message == WM_LBUTTONDOWN && pMsg->hwnd==btn.m_hwnd)
{
......
}