程序功能:
使绘图限制在圆形剪切区域内。
没有设置CS_OWNDC窗口风格的消息响应函数中:
窗口初始化:
m_hBrush=static_cast<HBRUSH>(GetStockObject(BLACK_BRUSH));
m_hClipRgn=CreateEllipticRgn(100,100,200,200);
绘制:
SelectObject(hDC,m_hBrush);
SelectClipRgn(hDC,m_hClipRgn);
Rectangle(hDC,0,0,300,300);
结果正常:
设置了CS_OWNDC窗口风格的消息响应函数中:
窗口初始化:
m_hBrush=static_cast<HBRUSH>(GetStockObject(BLACK_BRUSH));
m_hClipRgn=CreateEllipticRgn(100,100,200,200);
SelectObject(hDC,m_hBrush);
SelectClipRgn(hDC,m_hClipRgn);
绘制:
Rectangle(hDC,0,0,300,300);
结果:
请问在设置CS_OWNDC风格的情况下,如何正确的使用剪切区域?
使绘图限制在圆形剪切区域内。
没有设置CS_OWNDC窗口风格的消息响应函数中:
窗口初始化:
m_hBrush=static_cast<HBRUSH>(GetStockObject(BLACK_BRUSH));
m_hClipRgn=CreateEllipticRgn(100,100,200,200);
绘制:
SelectObject(hDC,m_hBrush);
SelectClipRgn(hDC,m_hClipRgn);
Rectangle(hDC,0,0,300,300);
结果正常:
设置了CS_OWNDC窗口风格的消息响应函数中:
窗口初始化:
m_hBrush=static_cast<HBRUSH>(GetStockObject(BLACK_BRUSH));
m_hClipRgn=CreateEllipticRgn(100,100,200,200);
SelectObject(hDC,m_hBrush);
SelectClipRgn(hDC,m_hClipRgn);
绘制:
Rectangle(hDC,0,0,300,300);
结果:
请问在设置CS_OWNDC风格的情况下,如何正确的使用剪切区域?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货