Announcement

Collapse
No announcement yet.

TexBox

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TexBox

    Hallo zusammen !!!

    Ich möchte wenn der Benutzer in TexBox was eingibt, dann soll die erste Buchstabe Groß geschrieben. Ich habe versucht mit "StrConv", sobald ich in TextBox Text eigebe, der schreibt mir schon die Erste Buchstabe Groß aber den Cursor setzt immer hinten der Buchstabe und ich brauche den Cursor vorne um dei weitere Eigabe zu machen.
    Wie kann ich in Quelcode das realieseren ???

    Danke im voraus !!!!
    Mfg Alex !!!
    VB 2005/ VB2008/ VB6

  • #2
    ... eine Möglichkeit:
    Eine Klasse von TextBox ableiten und dort das KeyPress-Ereignis abfangen:



    Code:
        Private Sub MyKeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
            If Text.Length = 0 Then         'Text ist noch leer
                Dim ch As Char = e.KeyChar
                If Char.IsLower(ch) Then    'wenn Kleinbuchstabe gedrückt...
                    Text = Char.ToUpper(ch) 'umwandeln in Großbuchstaben und Zuweisung an Text
                    e.Handled = True        'Ereignisweitergabe verhindern
                    SendKeys.Send("{END}")  'Cursor auf die Position NACH dem 1. Zeichen setzen
                End If
            ElseIf SelectionStart = 0 Then  'Cursor steht in bereits gefüllter Textbox an Position 0 (= vor dem Text)
                Dim ch As Char = e.KeyChar
                If Char.IsLower(ch) Then
                    Text = Text.Insert(0, Char.ToUpper(ch)) 'gedrückte Taste als Großbuchstabe einfügen,
                    'Cursor bleibt an Position 0, alle anderen Zeichen verschieben sich um 1 Stelle nach rechts
                    '(wie üblich im Einfügemodus); die 2. Stelle ist dann ein Großbuchstabe
                    e.Handled = True
                End If
            End If
        End Sub

    Comment

    Working...
    X