Hallo zusammen.
Ich habe da mal ein, ich denke mal recht banales, Problem. Aber irgendwie mache ich wohl einen Denkfehler oder ich denke zu kompliziert oder was auch immer.
Folgende Problematik.
Ich habe in C# eine Form bestehend unter anderem aus mehreren Textboxen und Listboxen für Ausgaben und halt auch eine Textbox für Eingaben.
Nun habe ich folgendes Problem. der Cursor soll, egal was der User macht, immer wieder in die Eingabetextbox springen. Egal ob er die Tabtaste drückt oder mit der Maus klickt oder was auch immer, der Cursor soll dort bleiben, und zwar ohne Timer->Setfocus bzw. GetFocus, was mir eine recht unelegante Lösung zu sein scheint.
Ich könnte natürlich sämtliche Events abfangen, nur dann könnte ich ja auch per Mausklick nichts anderes mehr in der Form machen, was mich da etwas in eine Zwickmühle drängt weil der Rest der Form ja auch funktional bleiben soll.
Ich hoffe da kann mir mal jemand einen kleinen Denkanstoß geben.
Vielen Dank im Voraus.
Seite 1 von 1
Cursor in bestimmter Textbox belassen C# Positionieren des Cursors
Anzeige
#2
geschrieben 16. Oktober 2014 - 11:11
Mh? Entweder die Box soll den Focus behalten oder aber eben nicht. Es ist immer nur dasjenige Element aktiv, was den Focus hat - KEIN anderes.
Mit anderen Worten, wenn der Cursor in der Textbox bleiben soll, muß diese den Focus behalten. DAmit das passiert, mußt Du allem anderen diesen Focus wieder wegnehmen, wenn was-auch-immer wie-auch-immer diesen Focus erhalten hat (Mausklick, Tastendruck, wegen mir auch per Timer).
Aber dann ist ganz automatisch das Formular funktional kaputt. Man kann ja nix mehr damit machen.
Was Du aber machen könntest, wäre, eine Ausnahme zu definieren - irgendeinen Hotkey beispielsweise - mit dem Du aus der Textbox rauskommst. Ob die Benutzer das so mögen, ist aber fraglich.
Mit anderen Worten, wenn der Cursor in der Textbox bleiben soll, muß diese den Focus behalten. DAmit das passiert, mußt Du allem anderen diesen Focus wieder wegnehmen, wenn was-auch-immer wie-auch-immer diesen Focus erhalten hat (Mausklick, Tastendruck, wegen mir auch per Timer).
Aber dann ist ganz automatisch das Formular funktional kaputt. Man kann ja nix mehr damit machen.
Was Du aber machen könntest, wäre, eine Ausnahme zu definieren - irgendeinen Hotkey beispielsweise - mit dem Du aus der Textbox rauskommst. Ob die Benutzer das so mögen, ist aber fraglich.
#3
geschrieben 16. Oktober 2014 - 12:13
Genau das ist ja mein Gedankengang. Entweder funktioniert alles andere nicht oder mein vorhaben nicht.
Wobei ich mir schon überlegt habe dass der Cursor ja eigentlich nur bei der Texteingabe dort hin springen muss, ich versuch einfach mal das KeyPressedEvent abzufangen. Mal sehen was passiert. Kann nur schief gehen.
Wobei ich mir schon überlegt habe dass der Cursor ja eigentlich nur bei der Texteingabe dort hin springen muss, ich versuch einfach mal das KeyPressedEvent abzufangen. Mal sehen was passiert. Kann nur schief gehen.
#4
geschrieben 16. Oktober 2014 - 14:01
Hmmm, ich meine, es sollte mit einem Keyboard-Focus gehen....
schau mal hier:
Input Overview - MSDN
Vllt hilft dir das schon weiter
schau mal hier:
Input Overview - MSDN
Vllt hilft dir das schon weiter
Thema verteilen:
Seite 1 von 1