PathRectangle QML Type

Definiert ein Rechteck mit optional abgerundeten Ecken. Mehr...

Import Statement: import QtQuick
Since: QtQuick 6.8

Eigenschaften

Ausführliche Beschreibung

PathRectangle bietet eine einfache Möglichkeit zur Angabe eines Rechtecks, wahlweise mit abgerundeten oder abgeschrägten Ecken. Die API entspricht derjenigen des Elements Rectangle.

    Shape {
        id: rectangleShape
        width: 200
        height: 150
        anchors.centerIn: parent
        preferredRendererType: Shape.CurveRenderer

        ShapePath {
            fillColor: "#3ad23c"

            PathRectangle {
                width: rectangleShape.width
                height: rectangleShape.height
                topLeftRadius: 30
                bottomRightRadius: 30
                bevel: true
            }
        }
    }

Siehe auch Path, PathLine, PathQuad, PathCubic, PathArc, PathAngleArc, PathCurve, und PathSvg.

Dokumentation der Eigenschaft

x : real

y : real

Legt die obere linke Ecke des Rechtecks fest.

Sofern diese Ecke nicht abgerundet ist, ist dies auch der Anfangs- und Endpunkt des Pfades.

Siehe auch relativeX und relativeY.


relativeX : real

relativeY : real

Definiert die obere linke Ecke des Rechtecks relativ zum Startpunkt des Pfades.

Wenn für eine einzelne Achse sowohl eine relative als auch eine absolute Endposition angegeben wird, wird die relative Position verwendet.

Relative und absolute Positionen können gemischt werden, z. B. ist es zulässig, ein relatives x und ein absolutes y festzulegen.

Siehe auch x und y.


height : real

width : real

Legt die Breite und Höhe des Rechtecks fest.

Siehe auch x und y.


bottomLeftRadius : real

bottomRightRadius : real

topLeftRadius : real

topRightRadius : real

Wenn diese Eigenschaften festgelegt sind, definieren sie die einzelnen Eckenradien. Ein Wert von Null bedeutet, dass die Ecke scharf ist, während ein positiver Wert bedeutet, dass sie abgerundet ist. Wenn sie nicht gesetzt sind, wird stattdessen der Wert von radius verwendet.

Diese Eigenschaften sind standardmäßig nicht gesetzt. Weisen Sie ihnen undefined zu, um sie in den nicht gesetzten Zustand zu versetzen.

Im folgenden Beispiel wird radius auf 10 und topLeftRadius auf 0 gesetzt:

    Shape {
        id: rectangleShape
        width: 200
        height: 150
        anchors.centerIn: parent
        preferredRendererType: Shape.CurveRenderer

        ShapePath {
            strokeColor: "black"
            strokeWidth: 4
            joinStyle: ShapePath.MiterJoin

            PathRectangle {
                width: rectangleShape.width
                height: rectangleShape.height
                radius: 10
                topLeftRadius: 0
                bottomRightBevel: true
            }
        }
    }

Siehe auch radius.


bottomLeftBevel : bool

bottomRightBevel : bool

topLeftBevel : bool

topRightBevel : bool

Wenn diese Eigenschaften festgelegt sind, definieren sie die einzelnen Eckschrägen. Wenn sie auf false eingestellt sind, ergeben sich entweder scharfe oder abgerundete Ecken, je nach den Werten der einzelnen Eigenschaften von radius. Wenn sie auf true gesetzt sind, ergeben sich abgeschrägte Ecken. Wenn sie nicht gesetzt sind, wird stattdessen der Wert von bevel verwendet.

Diese Eigenschaften sind standardmäßig nicht eingestellt. Weisen Sie ihnen undefined zu, um sie in den ungesetzten Zustand zu versetzen.

Im folgenden Beispiel ist bottomRightBevel auf true gesetzt:

    Shape {
        id: rectangleShape
        width: 200
        height: 150
        anchors.centerIn: parent
        preferredRendererType: Shape.CurveRenderer

        ShapePath {
            strokeColor: "black"
            strokeWidth: 4
            joinStyle: ShapePath.MiterJoin

            PathRectangle {
                width: rectangleShape.width
                height: rectangleShape.height
                radius: 10
                topLeftRadius: 0
                bottomRightBevel: true
            }
        }
    }

Siehe auch bevel.


bevel : bool [since 6.10]

Diese Eigenschaft legt fest, ob die Ecken des Rechtecks abgeschrägt sind.

Wenn sie auf false gesetzt wird, ergeben sich entweder scharfe oder abgerundete Ecken, abhängig von den Werten der einzelnen radius Eigenschaften.

Diese Eigenschaft kann durch die einzelnen Bevel-Eigenschaften überschrieben werden.

    Shape {
        id: rectangleShape
        width: 200
        height: 150
        anchors.centerIn: parent
        preferredRendererType: Shape.CurveRenderer

        ShapePath {
            fillColor: "#3ad23c"

            PathRectangle {
                width: rectangleShape.width
                height: rectangleShape.height
                topLeftRadius: 30
                bottomRightRadius: 30
                bevel: true
            }
        }
    }

Diese Eigenschaft wurde in Qt 6.10 eingeführt.

Siehe auch topLeftBevel, topRightBevel, bottomLeftBevel, und bottomRightBevel.


radius : real

Diese Eigenschaft definiert den Eckenradius, der verwendet wird, um ein abgerundetes Rechteck zu definieren.

Wenn der Radius ein positiver Wert ist, wird der Rechteckpfad als abgerundetes Rechteck definiert, andernfalls als normales Rechteck.

Diese Eigenschaft kann durch die einzelnen Eckradius-Eigenschaften außer Kraft gesetzt werden.

Der Standardwert ist 0.

Siehe auch topLeftRadius, topRightRadius, bottomLeftRadius, und bottomRightRadius.


strokeAdjustment : real

Diese Eigenschaft definiert die Anpassung der Strichstärke an die Rechteckkoordinaten.

Bei der Verwendung in einem ShapePath mit aktivierter Strichelung wird das tatsächlich gestrichene Rechteck standardmäßig auf allen Seiten um die halbe Strichstärke über das definierte Rechteck hinausgehen. Dies ist das erwartete Verhalten, da der Pfad die Mittellinie des Strichs definiert, und entspricht dem QPainter und SVG-Rendering.

Wenn man stattdessen möchte, dass das definierte Rechteck die äußere Kante des gestrichenen Rechtecks ist, wie ein Rectangle Element mit einem Rand, kann man strokeAdjustment auf die Strichstärke setzen. Dadurch werden alle Kanten effektiv um die halbe Strichstärke nach innen verschoben. Wie im folgenden Beispiel:

ShapePath {
    id: myRec
    fillColor: "white"
    strokeColor: "black"
    strokeWidth: 16
    joinStyle: ShapePath.MiterJoin

    PathRectangle { x: 10; y: 10; width: 200; height: 100; strokeAdjustment: myRec.strokeWidth }
}

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.