AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi FMX: Style-Dateien auslesen und Ressourcen enumerieren
Thema durchsuchen
Ansicht
Themen-Optionen

FMX: Style-Dateien auslesen und Ressourcen enumerieren

Ein Thema von himitsu · begonnen am 31. Aug 2025 · letzter Beitrag vom 1. Sep 2025
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.672 Beiträge
 
Delphi 12 Athens
 
#1

FMX: Style-Dateien auslesen und Ressourcen enumerieren

  Alt Gestern, 00:35
Hihoo,

kennt sich jemand mit TStyleBook, TStyleManager/TStyleStreaming und sowas aus?

Ich hab nach langer Suche rausgefunden, wie man via TStyleBook eine *.style einlesen und den Inhalt auflisten kann.
Bei *.fsf klappt das leider nicht. (nur gerade dafür würde ich es aber benötigen, um die Android-Styles durchgehen zu können)

Laut Hilfe gibt es auch ein TStyleManager.LoadFromResource (und vermutlich auch LoadFromFile), aber das ist gelogen.
https://docwiki.embarcadero.com/RADS...eMonkey_Styles
Zwar hat TStyleStreaming ein LoadFromFile, aber damit kann man auch nur *.style und keine *.fsf lesen. (EStyleException SCannotLoadStyleFromFile)

TStyleBook wirft beim Lesen keinen Fehler, aber ich kann darin, bei den *.fsf, leider NICHTS finden.

Im Designer ein TStyleBook auf die Form gepappt, dann lässt sich über den Designer eine *.fsf laden und man sieht anschließend die Ressourcen.




Wollte für diese beiden Problemchen Fehlendes und das mit FixedSize auflisten.
https://www.delphipraxis.net/217731-[fmx]-control-height-nicht-aenderbar.html#post1551280
https://en.delphipraxis.net/topic/13...e-tedit-field/

Anhang:
FixedSize ist noch nicht eingebaut, aber da weiß ich wie ich's machen werde.
Bei *.style scheint alles zu klappen,
aber *.fsf will einfach nicht.

In meinem Fall fehlt für Android und iOS die Ressource "passwordeditbutton".

Und ja, eigentlich wollte ich oben noch die Schrift drehen, aber keine Ahnung, warum das im FMX.Canvas so pervers sein muß .... hab's also gelassen.

Beim Start geht ein VCL-FileDirectoryOpenDialog auf,
dort ein Verzeichnis mit Style-Dateien auswählen
* C:\Program Files (x86)\Embarcadero\Studio\23.0\Redist\styles\Fmx
* C:\Users\Public\Documents\Embarcadero\Studio\23.0\Styles
und dann etwas (länger) warten.
Angehängte Grafiken
Dateityp: jpg Screenshot 2025-08-31 013134.jpg (210,5 KB, 15x aufgerufen)
Angehängte Dateien
Dateityp: zip Project3.zip (74,8 KB, 2x aufgerufen)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (Gestern um 00:45 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.672 Beiträge
 
Delphi 12 Athens
 
#2

AW: FMX: Style-Dateien auslesen und Ressourcen enumerieren

  Alt Gestern, 02:57
AHHHHHHHH, ich glaub/befürchte, ich hab's.

Zur DesignTime kann man Styles aller Plattformen laden,
aber zu Laufzeit nur Styles für die aktuelle Plattform.


Delphi-Quellcode:
procedure TStyleCollectionItem.LoadFromStream(const Stream: TStream);
begin
  if (FStyleBook <> nil) and (csDesigning in FStyleBook.ComponentState) then
    TStyleStreaming.SetSupportedPlatformHook(CheckPlatformTargetAtDesignTime) // liefert immer True
  else
    TStyleStreaming.SetSupportedPlatformHook(CheckPlatformTargetAtRunTime); // nur True, wenn Plattform stimmt
Fazit: ich werde das csDesigning setzen
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (Gestern um 02:59 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.672 Beiträge
 
Delphi 12 Athens
 
#3

AW: FMX: Style-Dateien auslesen und Ressourcen enumerieren

  Alt Heute, 00:39
csDesigning funktioniert echt super

https://github.com/geheimniswelten/FMXStyleOverview
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort


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 16:39 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-2025 by Thomas Breitkreuz