根据分辨率调整表单/控件大小的最佳方法?

时间:2009-11-23 21:50:51

标签: .net vb.net visual-studio

我是一个白痴,用一台1280X1024分辨率的17英寸显示器设计我的VB应用程序,完全忘记了它在另一台机器上的功能。这可能是一个很长的镜头,但有一个简单的方法来获得用户监视器的分辨率,并相应地重新调整控件和形式的大小?

提前致谢。

5 个答案:

答案 0 :(得分:3)

您可以将所有控件放在TableLayoutPanel中,正确锚定所有控件,并将窗口大小调整为适合显示分辨率的大小。如果您将整个面板锚定在顶部,底部,左侧和右侧,并在单元格内锚定单个文本框,组合框等,则控件将使用窗口调整大小。

需要做一些工作来弄清楚你想要的东西如何调整大小和移动,但不是那么多。

在从TLiebe的方法中获取数字后,您可以确定想要占用窗口的屏幕的哪一部分。

答案 1 :(得分:2)

您可以使用以下内容获取当前屏幕尺寸:

Dim screenHeight As Integer = My.Computer.Screen.Bounds.Height
Dim screenWidth As Integer = My.Computer.Screen.Bounds.Width

至于调整大小,如果您将控件锚定到表单,则应该能够重新调整表单大小以适应上面获得的屏幕尺寸。

答案 2 :(得分:1)

您可以将表单中的控件锚定到顶部,底部,左侧或右侧。这使得设计表单成为可能,因此可以更改大小而不会弄乱所有控件。您可以在设计模式下执行此操作,设置每个控件的锚属性。

您可以使用表单的最小(和最大)大小属性来防止其控件变得太小。您可以使用Screen.PrimaryScreen.Bounds或My.Computer.Screen.Bounds来获取屏幕大小并相应地设置表单大小,或者如果屏幕低于特定大小,可能会最大化表单。

答案 3 :(得分:0)

了解主持人。

创建一个空白表单。

将表单的大小设置为MyComputer.screen.bounds.area的宽度和高度。

将表单的WindowSize设置为Maximum。

将面板控件放在中间。

在面板中放置4个选项按钮,每个按钮2行。

缩小面板尺寸,使选项按钮合适。

将面板固定到表单的所有4个边。

启动应用程序并选择最小化按钮,现在可以访问表单的边以缩小和拉伸。

开始从任何一侧缩小表格,并注意面板的两侧如何随着收缩的方向移动。

将面板的锚定方式更改为顶部和左侧。

如果从顶部或左侧缩小,面板最终会向相反的边缘滚动。

如果您从底部或右侧收缩,表单'边缘会向面板滚动。

答案 4 :(得分:0)

这是我用来在加载时调整表单大小的代码

Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)
    Me.Height = My.Computer.Screen.WorkingArea.Height
    MyBase.OnLoad(e)
End Sub