Click-Ereignis in VB bzw WPF

Diskutiere Click-Ereignis in VB bzw WPF im Developer Network Forum im Bereich Hardware & Software Forum; also wenn man in die TextBox A hineinklickt sollte der Cursor ganz am ende stehen heist man kann was man davor geschrieben hat nicht mehr ändern...
  • Click-Ereignis in VB bzw WPF Beitrag #1
DarkAnubis

DarkAnubis

Bekanntes Mitglied
Dabei seit
04.12.2006
Beiträge
433
Reaktionspunkte
0
also wenn man in die TextBox A hineinklickt sollte der Cursor ganz am ende stehen
heist man kann was man davor geschrieben hat nicht mehr ändern

hät es mit gotfocus erstprobiert
hat aber nicht wirklich funktioniert

weis jemand etwas?
 
  • Click-Ereignis in VB bzw WPF Beitrag #2
cmddegi

cmddegi

Bekanntes Mitglied
Dabei seit
12.07.2001
Beiträge
4.740
Reaktionspunkte
0
Ort
Austria
Wo genau ist das Problem? Die Cursor-Positionierung selbst oder kommt das Ereignis nicht wie erwartet?
Welche VB-Version?

In VB6, gerade getestet (für ein Steuerelemente-Array, also beliebig viele Text1):
Code:
Private Sub Text1_GotFocus(Index As Integer)
    Text1(Index).SelStart = Len(Text1(Index).Text)
End Sub

Oder willst du, dass der Text davor sozusagen schreibgeschützt ist? Dazu fällt mir spontan nichts elegantes ein.
 
  • Click-Ereignis in VB bzw WPF Beitrag #3
DarkAnubis

DarkAnubis

Bekanntes Mitglied
Dabei seit
04.12.2006
Beiträge
433
Reaktionspunkte
0
sobald ich in das fenster klicke sollte er sollte die Textbox focusieren und den cursor dann immer zum Ende stellen
--> heist genaugenommen darf er das eine zeile zuvorgeschriebene nicht mehr ändern (schreibgeschützt wiest du gesagt hast)

Code:
    Private Sub Window_GotFocus(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs)

        tbConsole.Focus()
        tbConsole.SelectionStart = Len(tbConsole.Text)
        tbConsole.ScrollToEnd()
    End Sub

Visual Basic (2008)
oberfläche ist halt in wpf geschrieben also eine wpf-Anwendung
 
  • Click-Ereignis in VB bzw WPF Beitrag #4
T

TrµMAn

Bekanntes Mitglied
Dabei seit
23.10.2006
Beiträge
4.882
Reaktionspunkte
2
Ort
Wuppertal
ich weiß zwar nicht so viel von VB aber kann man evt. einfach nur die eingabe von Backspace ignorieren?
 
  • Click-Ereignis in VB bzw WPF Beitrag #5
DarkAnubis

DarkAnubis

Bekanntes Mitglied
Dabei seit
04.12.2006
Beiträge
433
Reaktionspunkte
0
für Backspace hab ich schon was geschrieben soweit es ging
heist wenn ich eine normale normale zeile nur bis spalte 5 löschen kann dann springt er immer wieder auf spalte 5 egal wie weit ich backspace drück

nur es funktioniert nicht wenn ich mich mitten in den zeilen per mausklick umherbewege
da kann ich einfach schreiben bzw löschen und das will ich einfach unterbinden das er egal wo ich reinklicke immer am ende bin
 
  • Click-Ereignis in VB bzw WPF Beitrag #6
cmddegi

cmddegi

Bekanntes Mitglied
Dabei seit
12.07.2001
Beiträge
4.740
Reaktionspunkte
0
Ort
Austria
GotFocus kommt, wie der Name sagt, nur, wenn das Feld den Fokus erhält. Wenn man im Element herumklickt, kommt das Click-Ereignis. Du kannst natürlich auch zusätzlich im KeyPress-Ereignis alle Tasteneingaben (außer z.B. Cursortasten etc.) abfangen, wenn der Cursor an der falschen Stelle steht, oder den Cursor in diesem Ereignis an die letzte Stelle positionieren, damit hinten dran geschrieben wird.
Meine persönliche Methode für konsolenartige Funktionen ist ein eigens Feld für die History, entweder eine große Textbox mit Schreibschutz-Eigenschaft (aber enabled, damit man markieren und kopieren kann), oder eine Listbox, und drunter das eigentliche Eingabefeld.

Das geht übrigens deshalb nicht so einfach, weil es nicht so gedacht ist. Windows ist auf Einheitlichkeit ausgerichtet, und der Anwender erwartet, dass der gesamte Text in einer Textbox änderbar ist.
 
  • Click-Ereignis in VB bzw WPF Beitrag #7
DarkAnubis

DarkAnubis

Bekanntes Mitglied
Dabei seit
04.12.2006
Beiträge
433
Reaktionspunkte
0
ok hab mal nachgeschaut nur das problem ist das eine TextBox kein Click ereignis hat
hätte es dann mit einem MouseDown probiert

Code:
    Private Sub tbConsole_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Input.MouseButtonEventArgs)
        tbConsole.SelectionStart = Len(tbConsole.Text)
        tbConsole.ScrollToEnd()
        Close()
    End Sub

nur da geht er gleich gar nicht rein
 
  • Click-Ereignis in VB bzw WPF Beitrag #8
DarkAnubis

DarkAnubis

Bekanntes Mitglied
Dabei seit
04.12.2006
Beiträge
433
Reaktionspunkte
0
ok hab es mit einem MouseMove-Event gelöst
 
  • Click-Ereignis in VB bzw WPF Beitrag #9
cmddegi

cmddegi

Bekanntes Mitglied
Dabei seit
12.07.2001
Beiträge
4.740
Reaktionspunkte
0
Ort
Austria
Also in meinem VB2005 hat die Textbox ein Click-Ereignis. MouseMove ist halt nicht die eleganteste Methode, weil das bei jeder Mausbewegung ausgeführt wird.
 
  • Click-Ereignis in VB bzw WPF Beitrag #10
DarkAnubis

DarkAnubis

Bekanntes Mitglied
Dabei seit
04.12.2006
Beiträge
433
Reaktionspunkte
0
bei mir leider nicht.
Nutze VB 2008 Teamsuite
Wpf-Anwendung mit VB Code
 
Thema:

Click-Ereignis in VB bzw WPF

ANGEBOTE & SPONSOREN

https://www.mofapower.de/

Statistik des Forums

Themen
213.179
Beiträge
1.579.172
Mitglieder
55.878
Neuestes Mitglied
Satan666
Oben