AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung FMX Styleeditor eigene Komponenten einfügen

FMX Styleeditor eigene Komponenten einfügen

Offene Frage von "Harry Stahl"
Ein Thema von Rynardald · begonnen am 20. Feb 2015 · letzter Beitrag vom 23. Feb 2015
Antwort Antwort
Rynardald

Registriert seit: 18. Sep 2014
26 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

FMX Styleeditor eigene Komponenten einfügen

  Alt 20. Feb 2015, 17:07
Hallo,
ich habe folgendes Problem. Ich hab mir eine eigene Komponente gebaut aus einem TPanel (names 'TLayoutPanel') und mehreren TLabels und einem TEdit. Nun möchte ich einen eigene Style für diese Komponente erstellen. Für das Panel habe ich das ohne Probleme geschafft indem ich im Styleeditor ein TRectangle hinzugefügt habe und es 'layoutpanelstyle' genannt habe. Wo ich aber meine Probleme habe ist die darunterliegenden Komponenten hizuzufügen und zu modifizieren. Wenn ich dem 'layoutpanelstyle' ein TLabel hinzufüge erkennt er nicht die bestehenden sondern erzeugt immer wieder neue Kompopnenten. Ich vermute mal ich muss bestimmte Regeln bezüglich der Namensvergabe beachte, die ich aber noch nicht gefunden habe.
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

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

AW: FMX Styleeditor eigene Komponenten einfügen

  Alt 20. Feb 2015, 23:13
Mir ist hier leider nicht ganz klar, wie die Ausgangssituation ist:

Hast Du eine eigene Komponente via Menü "Komponente", "Neue Komponente" erzeugt, diese Komponente liegt in der Toolpalette und Du willst diese im Style-Editor einem TLayout-Object hinzufügen?

Oder hast Du "nur" ein neues TLayout-Object im Style-Editor erzeugt und hast dort Probleme mit der Verwendung von anderen Komponenten?

Und was meinst Du mit "den darunter liegenden Komponenten"?

Evtl. kannst Du ja mal einen Screenshot machen, der die Situation etwas mehr verdeutlicht.

Geändert von Harry Stahl (20. Feb 2015 um 23:45 Uhr)
  Mit Zitat antworten Zitat
Rynardald

Registriert seit: 18. Sep 2014
26 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: FMX Styleeditor eigene Komponenten einfügen

  Alt 23. Feb 2015, 08:22
Möglicherweise habe ich das Wort Komponente ein bisschen missbräuchlich verwendet.
Was ich habe ist ein Objekt welches das Objekt TLayout erweitert und als Property unter anderem auch TLabels hat ('Darunter liegende Komponenten'). Diese Objekt befindet sich nicht in der Toolpalette.
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

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

AW: FMX Styleeditor eigene Komponenten einfügen

  Alt 23. Feb 2015, 08:50
Also so ähnlich wie anliegende Screenshots es zeigen?

In Layout1.jpg sieht man den angewendeten Style im Strukturfenster (panel1) und im Formulardesigner. Das Layout dafür habe ich von Grund auf nur im Style-Editor angelegt (Ergebnis siehe Layout2.jpg). Alternativ kann man auch einige Objekte auf das Formular schmeißen, dort mit der rechten Maustaste drauf klicken und "Benutzerdefinierten Style" auswählen.

Wichtig ist, dass man mit einem TLayout anfängt und alles weitere darein packt, anderenfalls kann es Schwierigkeiten beim Zugriff auf die Komponenten des Layouts (z.B. mit FindStyleResource) geben.

Das Positionieren der Komponenten innerhalb des Layouts funktioniert leider nicht vollständig mit der Maus. Mit der Maus kann man nur aus der Tool-Palette Komponenten in das Strukturfenster auf der linken Seite ziehen. Mit der Maus kann man auch einzelne Objekte in ein anderes ziehen, so dass dieser sozusagen der Container für das andere Objekt ist. Im Beispiel habe ich das TRectangle rosa eingefärbt. Da es nicht mehr durchsichtbar ist, muss das Label "über" dem TRectangle liegen, man zieht das TLabel also in das TRectangle rein.

Die genaue Positionierung geht aber nicht mit der Maus. Bei einigen Objekten geht es ein wenig, bei einigen gerät alles ziemlich durcheinander. Am besten man positioniert daher von Anfang an auf der linken Seite im Objektinspektor, indem man dort die entsprechenden Werte für Postion.x und Position.y bzw. Height und Width einträgt.
Miniaturansicht angehängter Grafiken
layout1.jpg   layout2.jpg  
  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 12:27 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