Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Cross-Platform-Entwicklung (https://www.delphipraxis.net/91-cross-platform-entwicklung/)
-   -   Delphi FMX Memo Events überschreiben? [Beantwortet] (https://www.delphipraxis.net/191879-fmx-memo-events-ueberschreiben-%5Bbeantwortet%5D.html)

Mavarik 27. Feb 2017 13:20


FMX Memo Events überschreiben? [Beantwortet]
 
Hallo Zusammen!

Ich hab es bisher noch nicht gebraucht, daher auch noch nicht damit beschäftigt...

Wie überlade ich in FMX die Messagebotschaften der TObject-Kommunikation?

Stichwort "Dispatcher".

Also das, was "früher" die Windows Botschaften waren...

Zum Beispiel die MM_MEMO_SELLENGTH_CHANGED usw...

Grüsse Mavarik

Der schöne Günther 27. Feb 2017 14:49

AW: FMX Memo Events überschreiben?
 
Es ist zwar richtig viel Text, scheint aber echt schön erklärt in zwei Artikeln hier vom FMX-Mann:

http://yaroslavbrovin.ru/category/fm...evelopment_en/

Mavarik 27. Feb 2017 15:12

AW: FMX Memo Events überschreiben?
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1362795)
Es ist zwar richtig viel Text, scheint aber echt schön erklärt in zwei Artikeln hier vom FMX-Mann:

http://yaroslavbrovin.ru/category/fm...evelopment_en/

Stimmt... Beantwortet alle Frage...

Ich hatte mir das im Source schon angesehen... Aber auf die Idee in der ProxyFactory einen eigene Klasse einzutragen, war der Hinweis der mir fehlte...

Gut hätte man drauf kommen können... :stupid:

Danke Günther!

Mavarik 27. Feb 2017 15:53

AW: FMX Memo Events überschreiben? [Beantwortet]
 
Leider Funktioniert es damit trotzdem nicht, weil die Proceduren die aufgerufen werden leider private "non virtual" sind und
das TStylesMemo leider genau für diese Events die notification abschaltet...

Also doch wieder den original source ändern...

Wenn jemand Interesse an der Lösung hat, wie man ALLE SELLENGTH_CHANGE mitbekommt, bitte melden...

Mavarik

Rollo62 28. Feb 2017 16:17

AW: FMX Memo Events überschreiben? [Beantwortet]
 
Ja das ist schön erklärt.
Er benutzt das Data Property als Speicher, damit hatte ich auch schonmal geliebäugelt:
Delphi-Quellcode:
Edit1.Model.Data['event_handler_value'] := TValue.From<TNotifyEvent>(EventHandler);

Unter TEdit o.ä. finde ich dann das, da habe ich die Finger davon gelassen:
http://docwiki.embarcadero.com/Libra...FmxObject.Data
Zitat:

Note: Do not use this member. It is for internal use only.
Ok, er benutzt das .Data Property in Model, aber ist diese Methode so wirklich 100% im Sinne der FMX als Datenspeicher gedacht ?
(mich stört hier insbesondere das "internal use") ...

Es wäre ziemlich übel wenn das in irgendeiner Version mal umgebaut wird.

Rollo

Mavarik 28. Feb 2017 19:48

AW: FMX Memo Events überschreiben? [Beantwortet]
 
Er nutzt das ja "nur", um nicht gegen die eigene Proxyclasse linken zu müssen - als Übergabe Event...

Du kannst die Infos ja auch direkt rein geben, aber das ist das ggf. nicht so schön...


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:37 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz