19,468
社区成员
发帖
与我相关
我的任务
分享
if(m_pGraphics == NULL)
{
CWindowDC dc(this);//this为当前窗口指针
HDC hdc=dc.GetSafeHdc();
m_pGraphics = new Graphics(hdc);
m_pGraphics->SetSmoothingMode(SmoothingModeHighQuality);//设置为平滑曲线
}
MoveTo...
Line To...
可破[/quote]
对额,指针应该用->
可以运行了,不过结果不理想,没什么变化
if(m_pGraphics == NULL)
{
CWindowDC dc(this);//this为当前窗口指针
HDC hdc=dc.GetSafeHdc();
m_pGraphics = new Graphics(hdc);
m_pGraphics->SetSmoothingMode(SmoothingModeHighQuality);//设置为平滑曲线
}
MoveTo...
Line To...
可破
Graphics graphics( pDC->m_hDC );
Pen myPen(Color(255,0,0,0),1);
graphics.SetSmoothingMode(SmoothingModeHighSpeed);//要速度不要质量
graphics.DrawLine(&myPen,0,0,50,200);
graphics.SetSmoothingMode(SmoothingModeHighQuality);//高质量
graphics.DrawLine(&myPen, 50, 0 ,130,200);
//还有一个参数SmoothingModeAntiAlias,估计是折中的意思。速度也要,质量也不能落下。
可以这样,定义时Graphics *m_pGraphics;然后构造函数中:m_pGraphics = NULL;OnPaint中:
if(m_pGraphics == NULL)
{
m_pGraphics = new Graphics(hdc);
SetSmoothMode....
}
MoveTo..
LineTo...