Partage
  • Partager sur Facebook
  • Partager sur Twitter

[VB .Net] Problème avec la largeur des Labels

    5 août 2019 à 14:00:39

    Bonjour,

    Je développe sous Visual Studio 2019 en VB .Net et j'aimerai récupérer la taille de mes labels.
    Le problème c'est que cette taille semble plafonnée à 100 alors que j'ai bien mis AutoSize à True et j'ai augmenté le maximumSize aussi mais rien n'y fait.
    Je vous met le code complet, les lignes en questions sont vers le début à la seconde boucle For

    Private dictLabel As New Dictionary(Of Integer, Label)
        Private dictUnderines As New Dictionary(Of Integer, Panel)
    
        Sub New(ByVal btnTxt() As String, ByVal btnColor() As Color, ByVal loc As Point)
    
            For i = 0 To btnTxt.Length - 1
    
                ' Instancier les labels
                Dim lbl As New Label
                dictLabel.Add(i, lbl)
    
                ' Instancier les panels
                Dim udr As New Panel
                dictUnderines.Add(i, udr)
    
            Next
    
            For i = 0 To btnTxt.Length - 1
    
                ' Labels
                dictLabel(i).AutoSize = True
                dictLabel(i).Text = btnTxt(i)
                dictLabel(i).Font = New Font("Microsoft Sans Serif", 12, FontStyle.Regular)
                dictLabel(i).MaximumSize = New Size(1000, 1000)
                dictLabel(i).Dock = DockStyle.Left
    
                If i = 0 Then
    
                    dictLabel(i).Location = New Point(0, 0)
    
    
                Else
    
                    dictLabel(i).Location = New Point(dictLabel(i - 1).Width + 30, 0)
    
                End If
    
                ' Underlines
                dictUnderines(i).Height = 5
                dictUnderines(i).Width = dictLabel(i).Width
                dictUnderines(i).BackColor = btnColor(i)
                dictUnderines(i).Location = New Point(dictLabel(i).Location.X, 30)
    
                ' Insertion des 'underlines' dans le formulaire
                Controls.Add(dictUnderines(i))
    
            Next
    
            Form_Main.Label1.Text = dictLabel(0).Width
            Form_Main.Label2.Text = dictLabel(1).Width
    
            ' Initialisation du paneau principal
            Location = loc
            'Height = dictLabel(0).Height + 10
            Height = 40
            For i = 0 To btnTxt.Length - 1
    
                Width += dictLabel(i).Width + 30
    
            Next
            BorderStyle = BorderStyle.FixedSingle
    
            ' Insertion des labels dans le formulaire
            For i = btnTxt.Length - 1 To 0 Step -1
    
                Controls.Add(dictLabel(i))
    
            Next
    
        End Sub
    Merci par avance si vous avez une idée.


    • Partager sur Facebook
    • Partager sur Twitter

    [VB .Net] Problème avec la largeur des Labels

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown