如上图所示
然后我写了如下代码CPen pen;
pen.CreatePen(PS_SOLID, 1, RGB(255, 255, 255));
dcImageBasic.SelectPen(pen);
dcImageBasic.MoveTo(rcItem.left, rcItem.top + 10);
dcImageBasic.LineTo(rcItem.left + 247, rcItem.top + 10);
理论上,线应该从这个item的这头到那头的。
但实际现象是没有画到头。这和逻辑坐标与设备坐标有关吗。
查了下资料,还是没看出什么问题。我的显示屏分辨率是1680*1050的

解决方案 »

  1.   

    NND,怎么图还是没上来。我弄下图片先
      

  2.   

    那就是你的247不对了。rcItem.left有了,rcItem.right不是就有另一端了吗?
      

  3.   

    比较郁闷的是,我该相信哪个呢。我截屏出来的图,显示的宽度是247
    GetClientRect,得到的宽度也是247
    rcItem.right确实是247
    但是我画一条247的先,却达不到247的长度。愁啊。是不是有啥坐标换算的呀。
      

  4.   

    也许你的left不对,试试dcImageBasic.MoveTo(rcItem.left+10, rcItem.top + 10);看是不是从最左边开始画的。