使用VB6
我的默认软件显示设置为“800 x 600”
具有不同显示设置的客户,例如“800 x 600”,“1366 x 768”,“1280 x 768”
使用超过“800 x 600”显示设置的软件的客户意味着软件没有全屏显示。软件显示75%的显示器尺寸宽度。
当我根据显示屏手动调整软件大小时,图像显示非常大。
如何根据显示器的显示尺寸全屏显示软件。
需要代码帮助
答案 0 :(得分:5)
简单的选项是允许用户最大化您的表单,这将使其填满整个屏幕,无论他们的计算机当前的分辨率设置如何。
此方法的唯一问题是它不会拉伸/调整表单上的控件以匹配其新大小。布局看起来和以前一样,但是现在它将被塞进左上角,在它的右下方有一大片空的空间。因此,只要表单本身改变大小,诀窍是动态调整表单上的控件。
不幸的是,VB 6没有任何内置支持。您别无选择,只能编写代码来自行调整所有控件的大小。这样做的最佳位置是您的表单Resize
事件。您可以通过检查其ScaleWidth
和ScaleHeight
属性来确定表单的当前大小。每个控件都会显示一个类似的Width
和Height
属性,您可以使用它来设置它们的大小,相对于容器形式的大小。您需要设计一些基本的数学逻辑来确定尺寸。一个快速的谷歌搜索应该出现几个其他人如何做到这一点的例子,但没有可用的闪亮模型。
可以在Microsoft Outlook等电子邮件程序中找到一个示例。你可能有TreeView
占据表格高度的100%,但只占其宽度的50%; a ListView
占据表格高度的50%和宽度的50%;位于其下方的TextBox
占据了表格高度的50%和宽度的50%。这将产生类似于下面所示的流体布局:
--------------------------------
| | |
| | |
| | ListView |
| | |
| | |
| TreeView |---------------|
| | |
| | |
| | TextBox |
| | |
| | |
--------------------------------
答案 1 :(得分:0)
只需将主窗体更改为最大化(将属性window state
设置为2 - Maximized
),然后确保其中包含的任何控件都根据需要调整大小或移动。
答案 2 :(得分:0)
您可以使用移动方法调整控件的大小。 在调整大小时使用scalewidth,scaleheight,scalemode,twipsperpixel属性。
但是当调整SSTab中的控件时,移动方法无法正常工作,这需要更多努力克服它。您可以参考this
其他方式是以最小分辨率(即800X600)设计表格 将以所有其他分辨率显示。