Häufig vorkommende Unterschiede zwischen der VCL und FireMonkey

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu GUI-Anwendungs-Frameworks


FireMonkey wurde mit gewissen Ähnlichkeiten zur VCL konzipiert, es gibt aber eine Reihe kleiner Unterschiede, die mit der Anwendungen mit VCL-Komponenten entwickeln vertraute Entwickler in die Irre führen könnten. In diesem Thema werden einige dieser Unterschiede behandelt.

Aktionen

Im Gegensatz zu VCL-Aktionen unterstützen FireMonkey-Aktionen keinen Aktionsmanager. Deshalb können Sie mit dem VCL-Aktionsmanager-Editor keine FireMonkey-Aktionen verwalten.

Kontrollkästchen

In FireMonkey müssen Kontrollkästchen das Ereignis OnChange anstatt OnClick zur Reaktion auf Änderungen des "Ausgewählt"-Status verwenden. Die Eigenschaft, die diesen Status wiedergibt, ist IsChecked, nicht Checked wie in der VCL.

Über-/Untergeordnet-Beziehungen

In der VCL können nur die Objekte TForms, TFrames, TPanels und Data Modules anderen Komponenten übergeordnet sein. In FireMonkey können Sie ein beliebiges Objekt beliebigen anderen Objekten überordnen, und diese Beziehung kann in der Strukturansicht sehr einfach eingerichtet werden.

Farben

FireMonkey-Farben haben zusätzlich zu RGB eine Alpha-Komponente (Opazität). Farben werden durch die Systemtypen TAlphaColor und TAlphaColorRec dargestellt. FireMonkey verwendet Farbkonstanten aus der Unit System.UIConsts. Diese Farbkonstanten haben das Präfix "cla" anstelle von "cl". Siehe auch Farben in der VCL.

Positionieren von Steuerelementen

Die Position eines Steuerelements wird in der VCL durch die Eigenschaften Top und Left ausgedrückt.

In FireMonkey verwenden Steuerelemente eine Position mit dem Typ TPosition mit verschachtelten X- und Y-Eigenschaften. Die Eigenschaft Position von 3D-Steuerelementen ist eine Instanz von TPosition3D mit einer zusätzlichen Z-Koordinate. Für die Größe verwendet FireMonkey Width und Height (und Depth bei 3D-Steuerelementen).

Ereignisse von Datenbankgittern

Die VCL-Ereignisse OnDrawDataCell und OnDrawColumnCell können in FireMonkey durch TStringGrid mit LiveBindings ersetzt werden.

Anzeigetext

Der Text einer FireMonkey-Beschriftung ist in der Eigenschaft Text, nicht in der Eigenschaft Caption (wie in der VCL) enthalten.

Schriftgröße

In der VCL werden Schriftgrößen durch Punkte, 72 pro logischem Zoll, ausgedrückt.

In FireMonkey werden Schriftgrößen durch geräteunabhängige Pixel (DIPs, Device-Independent Pixels), 96 pro logischem Zoll, ausgedrückt.

Daher ist Text, der dieselbe Schriftgröße (Font.Size) verwendet, in FireMonkey kleiner.

Maskierte Eingabefelder

Ein TMaskEdit oder ein TEdit in der VCL kann in FireMonkey mit einem TEdit und der Eigenschaft Password implementiert werden.

Optionsfelder und Optionsgruppen

Um die VCL-TRadioGroup für FireMonkey umzuwandeln, können Sie entweder TPanel oder TGroupBox verwenden.

Hinweis: In FireMonkey werden Elemente als Optionsfelder in TPanel nicht unterstützt.

Die Optionsfelder in jeder VCL-TGroupBox sind unabhängig. Wenn Sie mehrere VCL-TGroupBox-Steuerelemente in FireMonkey-TGroupBox-Steuerelemente konvertieren, werden die enthaltenen Optionsfelder abhängig (die Auswahl in einer Gruppe löscht die Auswahl in anderen Gruppen). Um die Unabhängigkeit in FireMonkey wiederherzustellen, legen Sie manuell die Eigenschaft GroupName für jedes konvertierte TRadioButton-Steuerelement fest.

Siehe auch