Boîte de texte avec nombre de ligne limité sous ActiveX Controls

Laurent -  
m@rina Messages postés 27580 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
Comment peut-on limiter le nombre de ligne dans une zone de texte créé sous ActiveX Controls?

Merci

1 réponse

  1. m@rina Messages postés 27580 Date d'inscription   Statut Modérateur Dernière intervention   11 562
     
    Bonjour,

    Oui, avec la propriété LineCount

    Supposant que ton contrôle ActiveX se nomme TextBox1 :

    Private Sub TextBox1_Change()
    If TextBox1.LineCount > 3 Then
    MsgBox "Nombre de lignes maxi atteint"
    End If
    End Sub

    m@rina

    0
    1. m@rina Messages postés 27580 Date d'inscription   Statut Modérateur Dernière intervention   11 562
       
      Re...

      Je suis en train de penser que malgré ce code, l'utilisateur pourra re-saisir un caractère.

      Si l'objet est de juste vérifier qu'on n'a pas saisi trop de lignes, ce code convient. Par contre, si on veut vraiment bloquer l'utilisateur, j'ajouterais un blocage de la zone :

      Private Sub TextBox1_Change()
      If TextBox1.LineCount > 3 Then
      MsgBox "nombre de lignes atteint"
      TextBox1.Locked = True
      End If
      End Sub


      et je mettrais un déblocage lorsqu'il prend le focus :

      Private Sub TextBox1_GotFocus()
      TextBox1.Locked = False
      End Sub
      0