InplaceEdit in Databound Grid
21. Feb 2018, 08:34
Delphi-Version: 7
Hallöchen,
vielleicht kann mir jemand zu diesem Problem helfen?
Ich habe hier einen abgeleiteten Databound Grid, mit zusätzlichem abgeleiteten TInplaceEdit. Leider ist es im InplaceEdit nicht möglich, wenn sich der Grid im dauerhaften Bearbeitungsmodus befindet, die Zelleninhalte über die Tastaturkombinationen SHIFT+<VK_LEFT><VK_RIGHT>, resp. CTRL+SHIFT+<VK_LEFT><VK_RIGHT> zu markieren, da diese im originalen TInplaceEdit des Databound Grid nicht, anders oder fehlerhaft implementiert sind. Daher bin ich auf die Idee gekommen, dieses Verhalten zu ermöglichen, in dem ich einfach die KeyDown-Methode des abegeleiteten TInplaceEdit überschreibe und selbst auf diese Keycodes reagiere.
Leider klappt dies nicht zu 100%, da ich nicht herausfinden kann, in welcher Richtung (nach links oder rechts) die Markierung des TInplaceEdit erstellt wurde (SelStart und SelLength enthalten dann immer die gleichen Werte). Die Markierung des Textes wäre in beiden Fällen unterschiedlich und kann mit jedem TEdit nachvollzogen werden.
Beispiel:
abcde 1234 9999
ist der Bereich "34_99" von links nach rechts markiert, dann selektiert ein CTRL-SHIFT-LEFT "34_" und CTRL-SHIFT-RIGHT "34_9999"
ist der Bereich "34_99" von rechts nach links markiert, dann selektiert ein CTRL-SHIFT-LEFT "1234_99" und CTRL-SHIFT-RIGHT "99"
Kann mir bitte jemand weiterhelfen?
Vielen Dank
Gruss Gremlin
|