作为学习MFC的一部分,我遇到了一种情况,我在对话框类的OnPaint()中动态创建一个矩形。
CPaintDC dc(this);
dc.Rectangle(10,10,208,92);
我想从另一个函数中获取此矩形的设备ID。 另一个函数是同一对话框类中的BtClick事件函数。
void ThreadDialog::OnBnClickedButton3()
{
CWnd* pWnd = FromHandle(dlg.m_hWnd);
CDC* pDC = pWnd->GetDC ();
/* Here i wanted to get the device context of the rectangle drawn in OnPaint() */
}
所以首先我需要动态创建的矩形的控件ID ,这样我就可以获得该矩形的设备上下文。
请帮忙怎么做。
答案 0 :(得分:3)
CDC :: Rectangle()不会创建任何内容,只是在该DC上绘制一个矩形。 没有与该图纸相关联的ID或设备上下文。