Erstellen eines grundlegenden FireMonkey-Steuerelements
Nach oben zu Grundlegende FireMonkey-Steuerelemente und mit Stilen versehene Steuerelemente
Inhaltsverzeichnis
In diesem Tutorial wird gezeigt, wie ein grundlegendes FireMonkey-Steuerelement erstellt wird, das in einem geräteübergreifenden Formular ein reguläres Polygon zeichnet.
Im Gegensatz zu mit Stilen versehenen Steuerelementen ändern grundlegende Steuerelemente ihr Erscheinungsbild nicht auf Basis der Auswahl eines Stils. Bei grundlegenden Steuerelementen können Sie das Erscheinungsbild, wie z.B. die Hintergrundfarbe, über Eigenschaften (wie der Eigenschaft Fill) ändern. Informationen über die Beziehung dieser Steuerelementtypen zueinander finden Sie unter Grundlegende FireMonkey-Steuerelemente und mit Stilen versehene Steuerelemente.
Das Steuerelement TRegularPolygon, das in diesem Tutorial erstellt wird, verfügt über die Eigenschaft NumberOfSides, die die Seitenanzahl festlegt. Da es sich hierbei um ein reguläres Polygon handelt, gilt diese Anzahl auch für Edges und Vertices.
TRegularPolygon-Komponenten
Die Mindestanforderung an ein grundlegendes Steuerelement ist das Überschreiben der Methode Paint, um sich selbst zu zeichnen. Dazu verwendet ein grundlegendes Steuerelement die Eigenschaft Canvas. Im Folgenden ist beispielsweise die Implementierung der Methode Paint für die Klasse TEllipse dargestellt:
procedure TEllipse.Paint;
begin
Canvas.FillEllipse(GetShapeRect, AbsoluteOpacity);
Canvas.DrawEllipse(GetShapeRect, AbsoluteOpacity);
end;
Canvas-Objekte stellen viele Methoden bereit, die intern die GPU zur Maximierung der Ausführungsgeschwindigkeit von Zeichenoperationen auf jeder Plattform verwenden. Sie müssen sich daher nicht um die Ausführungsgeschwindigkeit für die jeweilige Plattform (wie Windows und macOS) kümmern.
Eine weitere Methode, die evtl. überschrieben werden muss, ist die Methode PointInObject. Diese Methode teilt dem FireMonkey-Framework mit, ob der angegebene Punkt zu einem Objekt gehört. Mit dieser Information kann das FireMonkey-Framework feststellen, ob eine Komponente neu gezeichnet werden muss oder ob mit der Maus auf ein Steuerelement geklickt wurde.
Schritte
Zum Erstellen eines grundlegenden FireMonkey-Steuerelements sind die folgenden Schritte erforderlich:
- Schritt 1 - Erstellen einer neuen Komponente mit dem Experten "Neue Komponente"
- Schritt 2 - Implementieren einer Eigenschaft zum Angeben der Seitenanzahl
- Schritt 3 - Definieren eines Pfades zum Zeichnen des Polygons
- Schritt 4 - Implementieren der Methoden "Paint" und "PointInObject"
- Schritt 5 - Testen der grundlegenden FireMonkey-Komponente
- Schritt 6 - Hinzufügen von Eigenschaften zum Ändern des Erscheinungsbildes der Komponente