我正在编写一个 MFC 应用程序。我在窗体对话框上创建了一个 CStatic 派生控件,以便在启动程序时直接看到窗体。我现在使用派生类中的 OnPaint() 方法在此控件中绘图。到目前为止,一切正常。 然而,奇怪的是,这些绘图并没有被剪切到控件之外。相反,如果我画很大的东西,整个形状都会被画出来。根据我的理解,只应该绘制控件。
提前致谢 安德烈亚斯·D.
最佳答案
@dlb 现在明白了。
CDC* pDC = GetDC();
CRect rClient();
GetClientRect(rClient);
CRgn ClipRgn;
if (ClipRgn.CreateRectRgnIndirect(&rClient))
{
pDC->SelectClipRgn(&ClipRgn);
}
// Drawing content
pDC->SelectClipRgn(NULL);
ReleaseDC(pDC);
感谢您的回答
关于mfc - GDI 绘图失控,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11339860/