AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Gibt’s einen IOTA-Notifier mit quasi OnSelectionChange-Handler?

Gibt’s einen IOTA-Notifier mit quasi OnSelectionChange-Handler?

Ein Thema von r29d43 · begonnen am 15. Mai 2021 · letzter Beitrag vom 15. Mai 2021
Antwort Antwort
r29d43

Registriert seit: 18. Jan 2007
276 Beiträge
 
Delphi 10.4 Sydney
 
#1

Gibt’s einen IOTA-Notifier mit quasi OnSelectionChange-Handler?

  Alt 15. Mai 2021, 16:21
Hallo,

in meinem IOTA -Package möchte ich einen Befehl per normalem MausKlick und gleichzeitig gedrücktem Ctrl-Key & Shift-Key auslösen. Leider aber kommt mir da der Umstand in die Quere, dass dadurch in der Delphi-IDE auch gleichzeitig noch eine TextSelection mit ausgelöst wird (und zwar zwischen der alten Caret-Position und der neuen Position des Mausklicks). Eine TextSelektion, die es in einer normalen Textverarbeitung unter diesen Bedingungen nicht gibt. So eine TextSelektion wird in einer normalen TextVerarbeitung (z.B. OpenOffice) per normalen Mausklick und nur gedrückter Shift-Taste ausgelöst. Ist in einer normalen TextVerarbeitung gleichzeitig auch noch die Ctrl-Taste mit gedrückt passiert z.B. im OpenOffice diesbezüglich garnichts (unterbleibt also eine Text-Selektierung).

Die Delphi-IDE ignoriert jetzt aber leider diesen kleinen Unterschied, ob die Ctrl-Taste gleichzeitig mit gedrückt ist oder nicht, und erzeugt immer so eine TextSelektierung mit. Das möchte ich gerne unterbinden und die TextSelektierung auf die Funktionsweise einer normalen TextVerarbeitung umbiegen, um dass ich dann einen Mausklick mit gleichzeitig gedrückter Ctrl-Taste und Shift-Taste selbst als Befehl nutzen kann.

Nötig dafür wäre also sowas wie ein IOTA-Notifier mit einer Handler-Proc, die immer dann durchlaufen wird, wenn eine TextSelektion gemacht o. geändert werden soll. Quasi sowas wie einen OnSelectionChange-Handler eines TRichEdit-Controls. Gibt es einen IOTA-Notifier mit sowas?

Gibt es einen IOTA-Notifier, über den man generell die Selektierung von Text zumindest etwas kontrollieren kann?

Thx im Voraus
...


P.S. Es würde auch schon helfen, wenn man irgendwie an die Variablen drankäme, in denen die alte Caret-Position gespeichert ist. Weil man die in so einer MausKlick-Situation in der Window-Proc des Editors (ist ja ein TWinControl) dann mit der neuen MausKlick-Position laden könnte und damit dieses Problem auch los wäre.

Geändert von r29d43 (15. Mai 2021 um 16:23 Uhr)
  Mit Zitat antworten Zitat
r29d43

Registriert seit: 18. Jan 2007
276 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Gibt’s einen IOTA-Notifier mit quasi OnSelectionChange-Handler?

  Alt 15. Mai 2021, 19:25
Ok, danke für die werte Aufmerksamkeit, ich habe jetzt eine andere Lösung gefunden.

Da ich ja, wie schon angedeutet, die WindowProc des IDE-Editors überschrieben habe, habe ich dort einen solchen MausKlick (mit gleichzeitig gedrückter Ctrl-Taste und Shift-Taste) nun einfach in einen für den IDE-Editor normalen MausKlick umgewandelt (indem ich die MK_CONTROL- u. MK_SHIFT-Werte im WParameter der LButtonDown- und LButtonUp-WindowMessages jeweils gelöscht habe). Danach taucht im IDE-Editor natürlich keine solche Text-Selektion mehr auf, ...so dass einer ungestörten Ausführung meines Kommandos jetzt nichts mehr im Wege steht.


Edit: Wenn trotzdem aber jemand so einen IOTA-Notifier kennt, über den man solche Text-Selektierungen im IDE-Editor manipulieren kann, dann bitte die Lösung auch jetzt noch anhängen. Braucht man eh irgendwann mal. Zumal die Threadüberschrift das auch erwarten lässt.

Geändert von r29d43 (16. Mai 2021 um 09:35 Uhr)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf