![]() |
Event bei Änderung der Cursorposition (TEdit)
Liste der Anhänge anzeigen (Anzahl: 1)
Tachchen, :hi:
gibt es irgendwo ein Event, welches eintritt, wenn man den Eingabe-Cursor in einem TEdit irgendwie verschiebt? (egal ob Maus, Tastatur, ...) OK, ich könnte einfach pollen und über 'nen Timer dieses ständig prüfen, aber anders wäre es mir schon lieber :angel: MfG dat himilein PS: es geht darum, in diesem noch knuffigem Tachenrechner, eine Aktion auszulösen wenn man sowas macht. (keine Sorge ... ein paar weitere Funktionen und meine kleine StringMatheLib kommen auch irgendwann mal da rein) schon witzig, was man alles mit D7, nur Standardkomponenten und 'nen klitzekleinem erweitertem TEdit so alles machen kann [add] ach ja, ich arbeite nur mit Standardkomponenten, aber ein Message in das TEdit reinzubekommen, wäre kein Problem |
Re: Event bei Änderung der Cursorposition (TEdit)
Mir ist von einem Edit keine derartige Message bekannt. Du kannst nur selber die Tasten und Mausereignisse abfangen.
|
Re: Event bei Änderung der Cursorposition (TEdit)
also OnKeyPress liefert schonmal keine Tasten, aber mir wfällt grad auf ... ich hab die ganze Zeit OnKeyDown vergessen ... bin gleich wieder da ... nur mal schnell testen :oops:
|
Re: Event bei Änderung der Cursorposition (TEdit)
Am besten du leitest von TEdit ab, erstellst ein eigenes Event und prüfst das OnKeyUp - und OnMouseUp-Event.
Oder kann man den noch irgendwie anders ändern? Auf-die-Sprünge-hilf-code:
Delphi-Quellcode:
Aber das dürfte so ganz performant sein.
type
TOnEditCursPosChanged = procedure of object; var OnEditCursPosChanged: TOnEditCursPosChanged; LastCursPos: Integer; //.... procedure TBluppForm.CheckIfCursPosChanged; begin if LastCursPos <> edt1.SelStart then begin if Assigned(OnEditCursPosChanged) then OnEditCursPosChanged; LastCursPos := edt1.SelStart; end; end; procedure TBluppForm.edt1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState); begin { **Vieeel Code** } CheckIfCursPosChanged; end; procedure TBluppForm.edt1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin { **Vieeel Code** } CheckIfCursPosChanged; end; (Da braucht man gar nicht auf die einzelnen Tasten prüfen, ist imho unsinn) Aber auf keinen fall pollen. :shock: (also himi...^^) [so, genug rumeditiert...] |
Re: Event bei Änderung der Cursorposition (TEdit)
Das wird dann wohl klappen:
Zitat:
|
Re: Event bei Änderung der Cursorposition (TEdit)
joar OnKeyUp war die Lösung ... irgendwie hatte ich da wohl das berühmte Brett vom Köpfchen :oops:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz