Ja, so eine MultiLine-TextBox ist schon etwas feines Da lässt sich doch richtig viel Text eingeben. Dann helfen wir, oder besser gesagt, in diesem Fall das Windows-API Und zwar lässt sich mit Hilfe der SendMessage-Funktion u.a. auch die aktuelle Anzahl der Zeilen einer TextBox ermitteln. Und mit diesem "Wissen" ist es doch ein leichtes, die TextBox entsprechend zeilenmässig zu begrenzen. Und hier die Lösung: ' Folgende API-Deklaration wird benötigt Private Declare Function SendMessage Lib "user32" _ Alias "SendMessageA" ( _ ByVal hWnd As Long, _ ByVal wMsg As Long, _ ByVal wParam As Long, _ ByVal lParam As Long) As Long Private Const EM_GETLINECOUNT = &HBA ' Beispiel: Max. 3 Zeilen Private Const MAXLINE = 3 Private Sub Text1_KeyPress(KeyAscii As Integer) Dim rVal As Long ' Anzahl Zeilen ermitteln und prüfen rVal = SendMessage(Text1.hWnd, EM_GETLINECOUNT, -1, 0&) If KeyAscii = 13 Then If rVal >= MAXLINE Then KeyAscii = 0 Else If rVal > MAXLINE Then KeyAscii = 0 End If End Sub |