📄 subject_19827.htm
字号:
<p>
序号:19827 发表者:史顺武 发表日期:2002-10-31 17:41:18
<br>主题:又要大家帮忙了!
<br>内容:void CMyappView::OnDraw(CDC* pDC)<BR>{ <BR> CMyappDoc* pDoc = GetDocument();<BR> ASSERT_VALID(pDoc);<BR> pDC=GetDC();<BR> CPen pen;<BR> pen.CreatePen(PS_DASH,3,RGB(255,0,0));<BR> pDC->SelectObject(&pen);<BR> pDC->SetBkColor(RGB(255,0,255));<BR> pDC->SelectStockObject(BLACK_PEN);<BR> pDC->Ellipse(CRect(200,200,400,400));<BR> pDC->SelectStockObject(GRAY_BRUSH);<BR> ReleaseDC(pDC);<BR> <BR> <BR>}<BR>不知道错在那里,我的画笔没有颜色,背景色也没有.<BR>清大家帮忙!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:秋叶禅 回复日期:2002-10-31 17:53:36
<br>内容:void CMyappView::OnDraw(CDC* pDC)<BR>{ <BR> CMyappDoc* pDoc = GetDocument();<BR> ASSERT_VALID(pDoc);<BR> //pDC=GetDC();不要,你已经获得视图的DC不知道还要获得干啥?<BR> CPen pen;<BR> pen.CreatePen(PS_DASH,3,RGB(255,0,0));<BR> pDC->SelectObject(&pen);<BR> pDC->SetBkColor(RGB(255,0,255));<BR> pDC->SelectStockObject(GRAY_BRUSH); <BR> //pDC->SelectStockObject(BLACK_PEN); 不要//你创建了一个pen<BR> pDC->Ellipse(CRect(200,200,400,400));<BR> // pDC->SelectStockObject(GRAY_BRUSH); //干啥放在这里!<BR><BR> // ReleaseDC(pDC);<BR> <BR> <BR>}<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:史顺武 回复日期:2002-10-31 18:25:26
<br>内容:我实在是太采了,<BR>以后还请多多关照!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:史顺武 回复日期:2002-10-31 18:27:15
<br>内容:但是设置的背景颜色还是没有看到,不知道是不是在这里设置!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:秋叶禅 回复日期:2002-10-31 19:00:55
<br>内容:也可以在这里设置:<BR>CRect rect;<BR> GetClientRect(&rect);<BR>CBrush brush;<BR>CBrush * pOldBrush;<BR>pOldBrush = pDC->SelctObject(&brush);<BR>pDC->Rectangle(rect);<BR>pDC->SelectObject(pOldBrush);<BR>就行了!<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:不说 回复日期:2002-10-31 19:06:22
<br>内容:楼上的……少了一步吧…………?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:Niphen 回复日期:2002-10-31 19:08:17
<br>内容:使用<BR>SetClassLong(<BR> GetSafeHwnd(),<BR> GCL_HBRBACKGROUND,<BR> m_brush.GetSafeHandler()<BR>);设置背景,m_brush定义成成员变量,预先create好。<BR><BR>或者在OnEraseBkgnd里自己改变背景。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:秋叶禅 回复日期:2002-10-31 19:09:39
<br>内容:少了那一步啊!构造:brush(RGB(0,0,0))是吗?<BR>请指点啊!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:Niphen 回复日期:2002-10-31 19:16:14
<br>内容:少了brush.CreateSolidBrush(RGB(255,0,0))
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:Niphen 回复日期:2002-10-31 19:19:16
<br>内容:而且用FillRect是不是更好。<BR><BR>如果像“秋叶禅”这样做,用完之后还要brush.DeleteObject()才好吧。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:秋叶禅 回复日期:2002-10-31 19:31:02
<br>内容:哦,对!我也可以直接构造像这样CBrush brush(RGB(255,0,0));<BR><BR>对是要:FillRect()!这一步我忘了!:(<BR>呵 呵!<BR><BR>可以不用brush.DelectObject();<BR><BR> 我已经用了:<BR>pOldBrush = pDC->SelctObject(&brush);<BR><BR>pDC->SelectObject(pOldBrush);<BR>这样也不会引起资源泄露。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:史顺武 回复日期:2002-10-31 21:23:10
<br>内容:谢谢大家<BR>这个问题,我已经搞动了,但是我还有很多问题要麻烦大家的.先谢过了!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:史顺武 回复日期:2002-10-31 21:25:42
<br>内容:谢谢Niphen ,我分已经给了,而且这里不能给两个人.呵呵!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:秋叶禅 回复日期:2002-10-31 21:35:23
<br>内容:呵呵,在发一个帖子叫他去领人啊!呵呵!!!<BR>不能亏待!:)
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:史顺武 回复日期:2002-10-31 22:18:23
<br>内容:我的刷字是这样定义的.<BR>brush.CreateSolidBrush(RGB(255,0,0)) <BR>然后调用pDC->SelectObject(&brush);<BR>我知道win32里面要调用DeleteObject();<BR>MFC是不是要用.<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -