在WinAPI C中绘制形状
发布时间:2020-12-16 09:43:51 所属栏目:百科 来源:网络整理
导读:我正在通过WinAPI C学习绘图形状 我试图用WM_PAINT上的一些代码绘制2个椭圆: PAINTSTRUCT ps;HDC hdc = BeginPaint(hWnd,ps);HPEN hPen = CreatePen(PS_DASHDOTDOT,2,NULL);SelectObject(hdc,hPen);Ellipse(hdc,100,200,400,400);Ellipse(hdc,300,500,510);
我正在通过WinAPI C学习绘图形状
我试图用WM_PAINT上的一些代码绘制2个椭圆: PAINTSTRUCT ps; HDC hdc = BeginPaint(hWnd,&ps); HPEN hPen = CreatePen(PS_DASHDOTDOT,2,NULL);SelectObject(hdc,hPen); Ellipse(hdc,100,200,400,400); Ellipse(hdc,300,500,510); DeleteObject(hPen); EndPaint(hWnd,&ps); 但输出是: 我期望的结果是两个形状都不是另一个的前面.边框是点划线点. 解决方法
Ellipse()(与所有GDI形状函数一样)使用当前画笔填充形状,这就是您的输出看起来像这样的原因.有关详细信息,请参阅
setting pen and brush colors.
如果您只想要没有填充的椭圆,请先选择空刷: SelectObject(hdc,GetStockObject(NULL_BRUSH)); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |