AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

FMX Style Editor

Ein Thema von JRichmann · begonnen am 20. Nov 2014 · letzter Beitrag vom 22. Nov 2014
Antwort Antwort
Seite 2 von 2     12   
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#11

AW: FMX Style Editor

  Alt 22. Nov 2014, 08:19
Also: Was ist ein Style unter FMX?

Mit einem Style kann ich Aussehen und Struktur einer FMX-Komponente verändern, ohne deren Source zu ändern. Ein Style in diesem Zusammenhang ist weitaus mehr als ein Eimer voller Farbe, den man über einem Control auskippt, damit es rot, grün oder blau aussieht. So kann man damit zum Beispiel einem TListBoxItem sagen, das er nicht nur seine normale Caption hat, sondern etwa weitere Text-Objekte. Das geht, indem man diesem TListBoxItem einen eigenen Style zuweist, in dem diese weiteren Objekte definiert sind.

Es beginnt (in XE7) in jeder FMX-Komponente mit einem Rechtsklick auf dieselbige und dem Eintrag "Edit Custom Style...". Dann öffnet sich für diese Komponente der Style-Editor, der in der Tat ein seltsames Stück Software ist. Dort kann man sich aus der Komponenten-Palette weitere Elemente hinzuziehen, fast als würde man auf einem Form designen.

Die neuen Objekte lassen sich über Struktur-Ansicht und Objekt-Inspektor in der angemessenen Weise konfigurieren.

Klickt man auf "Apply & Close", so werden die Änderungen als neuer Style auf die zuvor ausgewählte Komponente übertragen.

screen-shot-2014-11-22-08.12.26.png

In meinem Beispiel habe ich jetzt ein TListBoxItem, der sieben (!) weitere Text-Elemente besitzt. Auswählen kann ich dieses Layout über die Eigenschaft "StyleLookup" des ListBoxItems. Mein neuer Style heisst "ListBoxItem2Style1", der jetzt auch für alle anderen (!) TListBoxItems zu Verfügung steht.

Möchte man zur Laufzeit diesen neuen zusätzlichen text-Objekten einen Wert zuweisen, geht das über die Methode "FindStyleResource" der ListBoxItems. Als Parameter gibt man den Namen des gewünschten Elements an.

Delphi-Quellcode:
LText := ListBoxItem3.FindStyleResource('text2style') as TText;
  if Assigned(LText) then
    LText.Text := 'Moep';
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.534 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: FMX Style Editor

  Alt 22. Nov 2014, 09:48
Ja genau, davon reden wir. Und für einige Dinge geht das eben einfacher mit Styles. Wenn ich z.B. bestimmte Buttons temporär mit Effekten versehen möchte (Glow- und / oder sonstige Effekte), dann weise ich eben einfach unter stylelookup den gewünschte style zu und die Komponente sieht dann so aus, wie gewünscht.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 08:33 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