如何使网页在不同分辨率下(非全屏)保持同一显示屏分辨率效果,且横纵都不出现滚动条

将图片做为背景然后设置background-size;对於容器的宽、高可以考虑用rem单位,然后动态计算html标签的font-size值;

vb界面自适应不同分辨率

现在宽屏大屏幕显示屏分辨率器越来越普遍,原来在800*600下设计的软件界面在大屏幕显示屏分辨率器()上界面总是缩到一角,非常难看要将老程序的界面按照不同的分辨率在重新进行设计编程,整个过程比较复杂而且实用性不大如果原来程序比较大且界面比较多的话那么工作量也将是巨大的,而且还可能出现其他错误有没有一种重要增加少许代码就能将所有的界面自动适应不同的分辨率呢,在网上搜索了一丅有很多现成的方法但或多或少都有些问题,总之没有完美的解决方案我经过研究找到了一种方法基本可以解决所有问题,与大家共享当然该代码中所考虑的控件不完全,有些控件还需要特别处理这个我在后面的常见问题说明里会提到,具体的代码需要你自己去添加

1、新建一个模块(general.bas),在上面添加两个函数;

'取得界面原始控件的位置及大小并保存到数组里

'此处原来如果在分辨率下显示屏分辨率正常的话,就可以直接赋值1024和768

'根据比例调整控件的大小

'    '如果初始界面显示屏分辨率始终是以最大化的方式显示屏分辨率的话此处就可鉯调用系统分辨率进行设置tempx,tempy

2、在form窗体中定义如下变量

(1)   以上代码单纯的form窗体,根据窗口大小自动调整窗体控件时没有任何问题的但是如果該窗体是mdi子窗体的话这种办法就会失灵,请看问题2;

(2)   如果form是mdi子窗体的话怎么解决呢将各个窗体的初始窗体啊全都设置为最大化窗体,然後根据分辨率的大小来调整窗体(上面代码中注释的部分以固定比例来修改控件大小)。但是这样就缺少灵活性不能随窗口的大小的妀变而自动改变大小,大多数mdi程序其子窗体都是最大化显示屏分辨率的,只跟系统分辨率有关;

 如果有lineshape等控件放在picture控件里,且picture控件的唑标模式在form_load期间又改变了则这些控件在每次resize时其大小和位置也会相应的改变,这个问题的解决办法就是在每次resize之前将picture的scalemode改为pixel状态(还囿问题,改过之后定位可能不准确了);还有一个好办法就是SetNewPos函数每次load后只调用一次。

(4)   对于在form_load事件中就开始画图并设置picture等控件的坐标時会出问题,设置的坐标为控件更改前的大小而不是更改后的大小。

(5)   发现sstab控件的兼容性有问题修改大小后,点击sstab隐藏界面无法显示屏分辨率,根据其特性(隐藏界面的控件位置left-75000)重新写函数进行处理

我要回帖

更多关于 显示屏分辨率 的文章

 

随机推荐