VC6.0中绘制图形的问题

比如我先定义了一个画笔画了一条线,然后我想换一种颜色请问一下怎么写那个代码?我自己用了SelectObject()函数,但是运行的时候没出效果。... 比如我先定义了一个画笔画了一条线,然后我想换一种颜色请问一下怎么写那个代码?我自己用了SelectObject()函数,但是运行的时候没出效果。 展开
 我来答
任明星Ming
推荐于2016-11-22 · TA获得超过798个赞
知道小有建树答主
回答量:1061
采纳率:100%
帮助的人:1132万
展开全部
CDC要选择一个CBrush来画线才行。CBrush负责定制颜色和线的样式。
void CMainWindow::OnPaint ()
{
CPaintDC dc (this);

//
// Initialize the device context.
//
dc.SetMapMode (MM_LOENGLISH);
dc.SetTextAlign (TA_CENTER ¦ TA_BOTTOM);
dc.SetBkMode (TRANSPARENT);

//
// Draw the body of the ruler.
//

CBrush brush (RGB (255, 255, 0));
CBrush* pOldBrush = dc.SelectObject (&brush);
dc.Rectangle (100, -100, 1300, -200);
dc.SelectObject (pOldBrush);

//
// Draw the tick marks and labels.
//
for (int i=125; i<1300; i+=25) {
dc.MoveTo (i, -192);
dc.LineTo (i, -200);
}

for (i=150; i<1300; i+=50) {
dc.MoveTo (i, -184);
dc.LineTo (i, -200);
}

for (i=200; i<1300; i+=100) {
dc.MoveTo (i, -175);
dc.LineTo (i, -200);

CString string;
string.Format (_T ("%d"), (i / 100) - 1);
dc.TextOut (i, -175, string);
}

}
更多追问追答
追问
代码中的dc.SelectObject (pOldBrush);

我要换一种其他的颜色怎么加代码呢?
追答
那换另外一个CBrush或者是CBrush重载颜色即可
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式