用CClientDC画直线
- C/C++ code
dc.MoveTo(m_ptOrigin); dc.LineTo(point);
可以用dc.SelectObject(&CPen)设置宽度颜色等等,可是如何获取当前系统的宽度(我不太清楚这样的叫法对不对)呢,就是画出的线条的width?
------解决方案--------------------------------------------------------
- C/C++ code
CPen pn; pn.CreatePen( PS_SOLID, 12, RGB( 0, 0, 255 ) ); //创建画笔 线宽12 SrcDC.SelectObject( pn ); //DC设置创建的画笔为当前画笔 SrcDC.Rectangle( myT ); SrcDC.FillRect( myT, &br ); SrcDC.Rectangle( xyT ); SrcDC.FillRect( xyT, &xr ); CPen* myp = SrcDC.SelectObject( &pn ); //设置当前画笔时,会返回一个指针存储先前画笔(注意这里&pn实际上可以为任何画笔,这一步执行的是SelectObject,会影响DC当前使用的画笔,因此后面一定要将DC的画笔恢复) LOGPEN lpn; myp->GetLogPen( &lpn ); //取得逻辑画笔 POINT mm = lpn.lopnWidth; INT penwd = mm.x; //取得线宽的为 SrcDC.SelectObject( myp );//注意将画笔恢复