43.1 Übersicht

Die Scrollcanvas-Klasse (Bildlaufleinwand) leitet sich von der Area-Klasse ab und erstellt eine Zeichnungsfläche mit angehängten Bildlaufleisten. Sie können benutzerdefinierte Grafiken über eine Zeichnungs-Callback-Funktion auf dieser Zeichnungsfläche darstellen, die automatisch aufgerufen wird, wenn Inhalte gezeichnet werden sollen. Sie müssen nur eine Benachrichtigung für das Attribut Scrollcanvas.Paint einrichten, und Ihre Zeichnungs-Callback-Funktion wird immer dann aufgerufen, wenn Inhalte gezeichnet werden müssen.

Dasselbe kann auch erreicht werden, indem ein Widget, das von Hollywood-Klasse abgeleitet ist, in eine Bildlaufleisten-Gruppe integriert wird oder ein solches Hollywood-Widget mit Bildlaufleisten verbunden wird. Scrollcanvas-Klasse ist jedoch in einigen Fällen vorzuziehen, da sie speziell für Verschiebeinhalte optimiert ist. Sie versucht, das Zeichnen zu minimieren, indem OS-Widgets verwendet werden, die speziell zum Anzeigen von verschiebbaren Inhalt entwickelt wurden. Daher ist diese Klasse normalerweise schneller als die beiden oben beschriebenen Lösungen.

Sie können die Dimensionen der Zeichnungsfläche mithilfe von Scrollcanvas.VirtWidth und Scrollcanvas.VirtHeight festlegen. Da die Scrollcanvas-Klasse Bildlaufleisten verwendet, können die Abmessungen der Zeichnungsfläche natürlich viel größer sein als die physischen Abmessungen des Bildlaufleinwand-Widgets. Wie bei allen anderen Klassen können Sie diese physischen Dimensionen mit den generischen Attributen Area.Width und Area.Height festlegen.

Um ein vollständiges Neuzeichnen Ihres Widgets zu erzwingen, führen Sie einfach die Methode Area.Redraw auf Ihrem Objekt aus. Wenn Sie Area.Redraw für Ihr Objekt ausführen, wird Ihre Zeichnungs-Callback-Funktion aufgerufen, so dass Sie die Zeichnungsfläche entsprechend aktualisieren können.

Mit Scrollcanvas-Klasse sind die Abmessungen, die Sie in Scrollcanvas.VirtWidth und Scrollcanvas.VirtHeight angeben, standardmäßig in geräteunabhängigen Pixeln und RapaGUI wird automatisch den Skalierungsfaktor des Systems auf den von Scrollcanvas.Paint gezeichneten Inhalt anwenden. Wenn Sie eine genauere Steuerung wünschen, können Sie das Attribut Scrollcanvas.AutoScale auf False setzen. In diesem Fall werden Scrollcanvas.VirtWidth und Scrollcanvas.VirtHeight als physikalische Pixel interpretiert und es erfolgt keine automatische Skalierung, damit Ihre Zeichnungs-Funktion hochauflösende Grafiken ohne Qualitätsverlust aufgrund der Skalierung zeichnen kann. Siehe High-DPI-Unterstützung für Details.


Navigation zeigen