Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi FMX Vererbung (https://www.delphipraxis.net/174622-fmx-vererbung.html)

Union 2. Mai 2013 05:37

FMX Vererbung
 
Da ich auch die Schnauze von LiveBindings voll habe, bin ich dabei, simple Datensensitive Komponenten für FMX zu bauen. Also schnell den TFieldDataLink aus der VCL übernommen und überarbeitet und dann ein TFmxDBEdit erstellt, in dem ich die nötigen Änderungen eingefügt habe. Läuft einwandfrei und schnell. Jetzt wollte ich aber von FMX.Edit.TCustomEdit erben. Leider wird dabei aber nichts angezeigt. Das Control funktioniert, lässt sich fokussieren usw. Wenn ich direkt von TEdit erbe (das ja fast nur aus "published" besteht) wird das Control angezeigt. Was übersehe ich? Muss ich irgendeine fiese Style-Variable setzen?

stahli 2. Mai 2013 11:23

AW: FMX Vererbung
 
Versuche mal im Constructor: StyleLookup := 'buttonstyle'
(Nur mal, ob das was bringt.)
Meinen Style-Thread kennst Du ja.

FMX zeichnet (unerwartet) gerne mal nix, wenn man Controls ableitet.
Das Prinzip dahinter habe ich aber noch nicht verstanden.
Bleibt nur Versuch und Irrtum. :-(

kaju74 2. Mai 2013 13:06

AW: FMX Vererbung
 
Hi.

Nur mal so reingeworfen...bei VGScene musste man damals "UpdateSytleResources" (oder so ähnlich) aufrufen...in XE4 scheint das nun "ApplyStyleLookup" zu sein...vielleicht funktionierts ja...

LG,
Marc

Union 2. Mai 2013 14:03

AW: FMX Vererbung
 
Mit StyleLookup := 'editstyle' im constructor funktioniert es, danke. Der Rest ist Fleißarbeit, unangenehm werden nochmal die Lookupkomponenten und das Grid. Aber dafür dann schnell und ohne ellenlangen LB-Stack und tausende von Observer-Aufrufen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:31 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