问个VB.net的label控件的有关问题

问个VB.net的label控件的问题
请教个label控件的问题

怎样让label控件固定在窗口中部

就是我我窗体无论怎么放大缩小 label控件始终在窗体的水平中间 

而且label控件也随着字体的变大自己也在变大      

------解决方案--------------------
难点是字体大小不能根据标签大小改变,他们单位不同,标签大小倒是可以根据字体大小改变。
------解决方案--------------------

Public Class Form1

  
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Label1.AutoSize = True
        Size_Changed(sender, e)

        '这一句可以不要
        'AddHandler Label1.FontChanged, AddressOf Size_Changed
        AddHandler Label1.SizeChanged, AddressOf Size_Changed
        AddHandler Label1.TextChanged, AddressOf Size_Changed
        AddHandler Me.SizeChanged, AddressOf Size_Changed

    End Sub

    Private Sub Size_Changed(sender As Object, e As EventArgs)
        Label1.Location = New Drawing.Point((Me.Width - Label1.Width) / 2, (Me.Height - Label1.Height) / 2)
    End Sub

   
End Class

------解决方案--------------------
Label1.Anchor = AnchorStyles.None
------解决方案--------------------
引用:
Visual Basic code?123456789101112131415161718192021Public Class Form1        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load        Label1.AutoSize = True    ……


只是水平居中的话,把
Label1.Location = New Drawing.Point((Me.Width - Label1.Width) / 2, (Me.Height - Label1.Height) / 2)
改成下面这句即可
Label1.Location = New Drawing.Point((Me.Width - Label1.Width) / 2, Label1.Top
------解决方案--------------------
涉及到不按照等比例缩放的问题,你这儿要求不知道是什么,下面的代码根据高度的变化缩放,可以先讲标签的字体设置的稍微大点测试。


Public Class Form1

    Dim labsize As Single
    Dim formsize As Size

    Private Sub Form1_Resize(sender As Object, e As System.EventArgs) Handles Me.Resize

        Dim hc = Me.Height / formsize.Height
        Dim wc = Me.Width / formsize.Width

        Dim p As Double

        ' If hc < wc Then
        p = labsize * hc