有一个CRgn对象,如何用虚线画它的边框?
pDC->FrameRgn( &rgn, &br, 1, 1 )
CDC类提供的方法只能画实线的,我想有没有办法获得这个rgn的各个拐点,设置画笔的样式用MoveTo、LineTo来画,各位大侠有什么办法没有?

解决方案 »

  1.   

    LOGBRUSH logBrush;
    logBrush.lbStyle = BS_SOLID;
    logBrush.lbColor = RGB(255,0,0);
    logBrush.lbHatch = 0;CPen pen;
    if(!pen.CreatePen(PS_DASHDOT, 2, &logBrush, 0, NULL))
    return;
    CPen *pOldPen = pDC->SelectObject(&pen);CBrush brush;
    brush.CreateBrushIndirect(&logBrush);pDC->FrameRgn( &rgn, &brush, 1, 1 )
      

  2.   

    感觉应该不行,你自己试试吧如果不行的话你把rgn分解成rect,判断那些线条是边界,比较麻烦