一个在17寸的显示器上写的程序,界面在17寸显示器上最大化后,可以布满全屏。但是放到19寸显示器上后,最大化发现界面就乱套了!多出了一大块空白的区域。
  我希望能像很多程序那样,在不同的分辨率下都能保持界面的比例。17寸时用1024X768的分辨率,19寸是1280X1024。
  希望能在验收前解决这个问题,请大家多关照了!

解决方案 »

  1.   

    计算好位置用SetWindowPos调整每个控件的大小
    这个问题以前有人问过,我也答过
    http://expert.csdn.net/Expert/topic/1321/1321031.xml?temp=.7370264
      

  2.   

    可以先GetSystemMetrics(SM_CXFULLSCREEN),GetSystemMetrics(SM_CYFULLSCREEN),获取分辩率,根据分辩率,MoveWindow(……)
      

  3.   

    用GetSystemMetrics(SM_CXFULLSCREEN)和GetSystemMetrics(SM_CYFULLSCREEN)得到屏幕的分辩率,然后要你跟SetWindowPos设置控件.
    SetWindowPos这个函数看起来是用了设置控件的位置的,但它还可以用了设置控件的大小...
      

  4.   

    Must adjust their positions yourself
      

  5.   

    用百分比来计算,用GetSystemMetrics(SM_CXFULLSCREEN)和GetSystemMetrics(SM_CYFULLSCREEN)得到屏幕的分辩率,预先定好控件占据屏幕的百分比大小,设置控件的时候按照百分比计算出尺寸再设置,非常容易就能办到。
    快给分给分,我等着加个三角呢:)
      

  6.   

    http://expert.csdn.net/Expert/topic/1321/1321031.xml?temp=.7370264
      

  7.   

    change mode of the mapping
    SetMapMode