我遇到的问题是这样的,原来软件在设计的时候,界面分辨率是800X600的,现在我想让界面变成1024X768,因为之前没做过,一点头绪都没有,具体的应该怎么做?如何下手呢?谢谢各位

解决方案 »

  1.   

    vb6里有个Active控件是负责这个的,忘了叫什么了,没用过.
    或者你可以让界面窗体加载时等于screen的大小.
      

  2.   

    不说用第3方控件的方法
    只用VB自己的方法来实现:方法1:静态
    在不同的分辨率下做好不同的排版,记录下该界面中的所有控件的大小和位置,和所有显示的字体大小,然后写成记录文件,在程序启动的时候判断当前的分辨率,读取相应的文件记录,用MOVE等方法将控件定位到记录中的位置.
    这个方法定位准确,资源占用小,缺点是必须做前期工作.方法2:动态
    一般的显示器分辨率都是从640*480到1024*768
    你选一个中间的分辨率作为基准,比如:600*800,按照这个分辨率先排版好
    在程序启动的时候判断当前系统的分辨率,同样使用控件的MOVE方法按照比例进行缩放:
    比如控件A在800*600分辨率下的坐标:LEFT=80 TOP=60 WIDTH=240 HEIGH=120
    到了1024*768的分辨率下:X比例:1024/800=1.28  Y比例:768/600=1.28
    于是:以下语句就可以按照比例缩放了:
    With A
     .move .Left*X, .Top*Y, .Width*X, .Heigh*Y
    End With
    如果还有字体:比如A是个TEXT控件:在800*600的时候A.FONTSIZE=12
    那么到了1024*768下: A.FONTSIZE= INT(A.FONTSIZE * X) 或者A.FONTSIZE= INT(A.FONTSIZE * Y)这个方法的好处在于可以适应任何的分辨率(因为使用了X和Y两个不同的比例所以也适用于宽屏)
    缺点在于你需要多写一些代码.另外,我以前写的程序基本是使用方法2,因为我宁可写代码,也不喜欢做文档工作,呵呵.