我想在一个对话框上指定的区域内画图,使用FillSolidRect函数。
我如何才能知道指定区域的位置是多少!
我开始是通过对话框资源编辑器中的标尺来确定位置,但是画出的位置不对,这是为啥?

解决方案 »

  1.   

    对话框资源编辑器中的标尺确实不能用来定位的
    你画图单位是像素,而标尺的单位是不同的。你如果想在指定的位置画图,可以在那个位置放一个picture控件,然后向控件画图。
      

  2.   

    可以从CStatic继承一个自己的类,在他的OnPaint函数中可以随心所欲的画,起始Picture控件也是一个CStatic
      

  3.   

    CStatic static;
    CDC *pdc = static.GetDC();
    像和OnDraw()里一样了
      

  4.   

    如果不是从CStatic继承一个自己的类
    而是通过GetDlgItem()函数得到一个临时的CStatic对象,
    代码应该放在哪个函数里面。
      

  5.   

    指定的区域内?
    What's your mean?
      

  6.   

    对话框有自己的坐标系统。你可以使用MapDialogRect去转换模板单位到screen单位。