vb.net 怎样将窗体和所有控件根据电脑分辨率固定?

怎样将窗体和所有控件根据电脑分辨率固定?
例如说 我想要写个音乐播放器
在我设计的视窗下 所有按钮等 放好了位置
在全屏开启後 原来在设计视窗中 按钮是在下面 变了在中间
或者在其他分辨率的电脑下开启 按钮等就会移位
什麽方法可以将"所有"控件根据电脑分辨率固定在一个位置 不论全屏或是在其他电脑上用
DOCK只能限制在5个位置 太不方便了

希望可以具体和详细一点 因为新手不太懂

Public Class Form1

    Dim 初始化控件自动大小调整与窗口的宽度比例 As Integer
    Dim 初始化控件自动大小调整与窗口的高度比例 As Integer

 


    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        初始化控件自动大小调整与窗口的宽度比例 = Me.Width / 控件自动大小调整.Width
        初始化控件自动大小调整与窗口的高度比例 = Me.Height / 控件自动大小调整.Height
        显示控件的位置坐标()

    End Sub


    Private Sub Form1_ResizeEnd(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.ResizeEnd
        ' Form1_ResizeEnd  这个事件是 窗口大小变化完成后 再进行操作的
        控件自动大小调整.Location = New Point(控件自动大小调整.Left, 控件自动大小调整.Top)
        '设置控件的初始左位置坐标  与  上位置坐标
        控件自动大小调整.Size = New Point(Int(Me.Width / 初始化控件自动大小调整与窗口的宽度比例), Int(Me.Height / 初始化控件自动大小调整与窗口的高度比例))
        '更改控件的大小  按第一次窗口的比例 进行调整

        显示控件的位置坐标()
    End Sub

    Private Sub 显示控件的位置坐标()
        Label1.Text = "控件的上边距坐标: " & 控件自动大小调整.Top
        Label2.Text = "控件的左边距坐标: " & 控件自动大小调整.Left
        Label3.Text = "控件的宽度大小: " & 控件自动大小调整.Width
        Label4.Text = "控件的高度大小: " & 控件自动大小调整.Height
    End Sub
End Class

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-14
长度不能写死,要写成百分比,它们会自动撑开的。
第2个回答  推荐于2018-03-20
使用SplitContainer1控件不就行了,SplitContainer1控件的Fixedpanel属性设置为Panel1
SplitContainer1的Panel2里面再放置一个SplitContainer2
SplitContainer2控件的Fixedpanel属性设置为Panel2
二个SplitContainer设置为水平折为器方向
至于播放器控件就放在SplitContainer2控件Panel1里面
播放器控件DOCK设置为FILL

这样不管放大缩小界面,播放器控件总是自适应窗体大小而菜单按钮总是在最边缘本回答被提问者和网友采纳
第3个回答  2013-08-12

太简单了 给你个我写的2005的代码 希望能帮到你