QBrush Class
Die Klasse QBrush definiert das Füllmuster der von QPainter gezeichneten Formen. Mehr...
Kopfzeile: | #include <QBrush> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QBrush ist Teil von Painting Classes und Implicitly Shared Classes.
Öffentliche Funktionen
QBrush() | |
QBrush(Qt::BrushStyle style) | |
QBrush(const QGradient &gradient) | |
QBrush(const QImage &image) | |
QBrush(const QPixmap &pixmap) | |
QBrush(Qt::GlobalColor color, Qt::BrushStyle style = Qt::SolidPattern) | |
QBrush(Qt::GlobalColor color, const QPixmap &pixmap) | |
QBrush(const QColor &color, Qt::BrushStyle style = Qt::SolidPattern) | |
QBrush(const QColor &color, const QPixmap &pixmap) | |
QBrush(const QBrush &other) | |
~QBrush() | |
const QColor & | color() const |
const QGradient * | gradient() const |
bool | isOpaque() const |
void | setColor(const QColor &color) |
void | setColor(Qt::GlobalColor color) |
void | setStyle(Qt::BrushStyle style) |
void | setTexture(const QPixmap &pixmap) |
void | setTextureImage(const QImage &image) |
void | setTransform(const QTransform &matrix) |
Qt::BrushStyle | style() const |
void | swap(QBrush &other) |
QPixmap | texture() const |
QImage | textureImage() const |
QTransform | transform() const |
QVariant | operator QVariant() const |
bool | operator!=(const QBrush &brush) const |
QBrush & | operator=(QBrush &&other) |
QBrush & | operator=(const QBrush &brush) |
bool | operator==(const QBrush &brush) const |
Verwandte Nicht-Mitglieder
QDataStream & | operator<<(QDataStream &stream, const QBrush &brush) |
QDataStream & | operator>>(QDataStream &stream, QBrush &brush) |
Detaillierte Beschreibung
Ein Pinsel hat einen Stil, eine Farbe, einen Farbverlauf und eine Textur.
Der Pinsel style() definiert das Füllmuster mit Hilfe des Qt::BrushStyle enum. Der Standard-Pinselstil ist Qt::NoBrush (je nachdem, wie Sie einen Pinsel konstruieren). Dieser Stil weist den Maler an, Formen nicht zu füllen. Der Standardstil für das Füllen ist Qt::SolidPattern. Der Stil kann festgelegt werden, wenn der Pinsel mit dem entsprechenden Konstruktor erstellt wird, und zusätzlich bietet die Funktion setStyle() die Möglichkeit, den Stil zu ändern, nachdem der Pinsel erstellt wurde.
Der Pinsel color() definiert die Farbe des Füllmusters. Die Farbe kann entweder eine der vordefinierten Farben von Qt, Qt::GlobalColor, oder eine beliebige andere benutzerdefinierte QColor sein. Die aktuell eingestellte Farbe kann mit den Funktionen color() und setColor() abgefragt bzw. geändert werden.
Die Funktion gradient() definiert die Farbverlaufsfüllung, die verwendet wird, wenn der aktuelle Stil entweder Qt::LinearGradientPattern, Qt::RadialGradientPattern oder Qt::ConicalGradientPattern ist. Farbverlaufs-Pinsel werden erstellt, indem ein QGradient als Konstruktor-Argument beim Erstellen des QBrush angegeben wird. Qt bietet drei verschiedene Farbverläufe: QLinearGradient, QConicalGradient, und QRadialGradient - die alle von QGradient erben.
QRadialGradient gradient(50, 50, 50, 50, 50); gradient.setColorAt(0, QColor::fromRgbF(0, 1, 0, 1)); gradient.setColorAt(1, QColor::fromRgbF(0, 0, 0, 0)); QBrush brush(gradient);
Die texture() definiert die Pixmap, die verwendet wird, wenn der aktuelle Stil Qt::TexturePattern ist. Sie können einen Pinsel mit einer Textur erstellen, indem Sie die Pixmap beim Erstellen des Pinsels angeben oder setTexture() verwenden.
Beachten Sie, dass die Anwendung von setTexture() style() == Qt::TexturePattern macht, unabhängig von den vorherigen Stileinstellungen. Auch der Aufruf von setColor() macht keinen Unterschied, wenn der Stil ein Farbverlauf ist. Dasselbe gilt, wenn der Stil Qt::TexturePattern ist, es sei denn, die aktuelle Textur ist eine QBitmap.
Die Funktion isOpaque() gibt true
zurück, wenn der Pinsel vollständig undurchsichtig ist, andernfalls false. Ein Pinsel wird als undurchsichtig angesehen, wenn:
- Die Alpha-Komponente von color() ist 255.
- Sein texture() hat keinen Alphakanal und ist kein QBitmap.
- Die Farben in gradient() haben alle eine Alphakomponente, die 255 ist.
![]() | Um den Stil und die Farbe von Linien und Umrissen festzulegen, verwenden Sie die QPainter's pen kombiniert mit Qt::PenStyle und Qt::GlobalColor:QPainter painter(this); painter.setBrush(Qt::cyan); painter.setPen(Qt::darkCyan); painter.drawRect(0, 0, 100,100); painter.setBrush(Qt::NoBrush); painter.setPen(Qt::darkGreen); painter.drawRect(40, 40, 100, 100); Beachten Sie, dass QPainter beim Zeichnen von Formen standardmäßig den Umriss (unter Verwendung des aktuell eingestellten Stifts) rendert. Verwenden Sie |
Weitere Informationen über das Malen im Allgemeinen finden Sie im Malsystem.
Siehe auch Qt::BrushStyle, QPainter, und QColor.
Dokumentation der Mitgliedsfunktionen
QBrush::QBrush()
Konstruiert einen schwarzen Standardpinsel mit dem Stil Qt::NoBrush (d.h. dieser Pinsel füllt keine Formen).
QBrush::QBrush(Qt::BrushStyle style)
Konstruiert einen schwarzen Pinsel mit dem angegebenen style.
Siehe auch setStyle().
QBrush::QBrush(const QGradient &gradient)
Konstruiert einen Pinsel auf der Grundlage des angegebenen gradient.
Der Pinselstil wird auf den entsprechenden Farbverlaufsstil gesetzt (entweder Qt::LinearGradientPattern, Qt::RadialGradientPattern oder Qt::ConicalGradientPattern).
QBrush::QBrush(const QImage &image)
Konstruiert einen Pinsel mit einer schwarzen Farbe und einer Textur, die auf die angegebene image eingestellt ist. Der Stil wird auf Qt::TexturePattern gesetzt.
Siehe auch setTextureImage().
QBrush::QBrush(const QPixmap &pixmap)
Konstruiert einen Pinsel mit einer schwarzen Farbe und einer Textur, die auf die angegebene pixmap eingestellt ist. Der Stil wird auf Qt::TexturePattern gesetzt.
Siehe auch setTexture().
QBrush::QBrush(Qt::GlobalColor color, Qt::BrushStyle style = Qt::SolidPattern)
Konstruiert einen Pinsel mit den angegebenen color und style.
Siehe auch setColor() und setStyle().
QBrush::QBrush(Qt::GlobalColor color, const QPixmap &pixmap)
Konstruiert einen Pinsel mit dem angegebenen color und dem in pixmap gespeicherten benutzerdefinierten Muster.
Der Stil wird auf Qt::TexturePattern gesetzt. Die Farbe hat nur für QBitmaps eine Wirkung.
Siehe auch setColor() und setTexture().
QBrush::QBrush(const QColor &color, Qt::BrushStyle style = Qt::SolidPattern)
Konstruiert einen Pinsel mit den angegebenen color und style.
Siehe auch setColor() und setStyle().
QBrush::QBrush(const QColor &color, const QPixmap &pixmap)
Konstruiert einen Pinsel mit dem angegebenen color und dem in pixmap gespeicherten benutzerdefinierten Muster.
Der Stil wird auf Qt::TexturePattern gesetzt. Die Farbe wird nur für QBitmaps wirksam.
Siehe auch setColor() und setTexture().
QBrush::QBrush(const QBrush &other)
Konstruiert eine Kopie von other.
[noexcept]
QBrush::~QBrush()
Zerstört die Bürste.
const QColor &QBrush::color() const
Gibt die Pinselfarbe zurück.
Siehe auch setColor().
const QGradient *QBrush::gradient() const
Gibt den Farbverlauf zurück, der diesen Pinsel beschreibt.
bool QBrush::isOpaque() const
Gibt true
zurück, wenn der Pinsel vollständig undurchsichtig ist, andernfalls false. Ein Pinsel wird als undurchsichtig angesehen, wenn:
- Die Alphakomponente des color() ist 255.
- Sein texture() hat keinen Alphakanal und ist kein QBitmap.
- Die Farben in gradient() haben alle eine Alphakomponente, die 255 ist.
- Es handelt sich um einen erweiterten radialen Farbverlauf.
void QBrush::setColor(const QColor &color)
Setzt die Pinselfarbe auf den angegebenen Wert color.
Beachten Sie, dass der Aufruf von setColor() keinen Unterschied macht, wenn der Stil ein Farbverlauf ist. Dasselbe gilt, wenn der Stil Qt::TexturePattern ist, es sei denn, die aktuelle Textur ist eine QBitmap.
Siehe auch color().
void QBrush::setColor(Qt::GlobalColor color)
Dies ist eine überladene Funktion.
Setzt die Pinselfarbe auf die angegebene color.
void QBrush::setStyle(Qt::BrushStyle style)
Setzt den Pinselstil auf style.
Siehe auch style().
void QBrush::setTexture(const QPixmap &pixmap)
Setzt die Pinsel-Pixmap auf pixmap. Der Stil wird auf Qt::TexturePattern gesetzt.
Die aktuelle Pinselfarbe wirkt sich nur bei einfarbigen Pixmaps aus, d. h. bei QPixmap::depth() == 1 (QBitmaps).
Siehe auch texture().
void QBrush::setTextureImage(const QImage &image)
Setzt das Pinselbild auf image. Der Stil wird auf Qt::TexturePattern gesetzt.
Beachten Sie, dass die aktuelle Pinselfarbe keine Auswirkung auf monochrome Bilder hat, im Gegensatz zum Aufruf von setTexture() mit QBitmap. Wenn Sie die Farbe von monochromen Pinseln ändern möchten, konvertieren Sie entweder das Bild mit QBitmap::fromImage()
in QBitmap und setzen Sie die resultierende QBitmap als Textur, oder ändern Sie die Einträge in der Farbtabelle für das Bild.
Siehe auch textureImage() und setTexture().
void QBrush::setTransform(const QTransform &matrix)
Legt matrix als explizite Transformationsmatrix für den aktuellen Pinsel fest. Die Pinsel-Transformationsmatrix wird mit der QPainter Transformationsmatrix zusammengeführt, um das endgültige Ergebnis zu erhalten.
Siehe auch transform().
Qt::BrushStyle QBrush::style() const
Gibt den Pinselstil zurück.
Siehe auch setStyle().
[noexcept]
void QBrush::swap(QBrush &other)
Tauscht diese Bürste gegen other aus. Dieser Vorgang ist sehr schnell und schlägt nie fehl.
QPixmap QBrush::texture() const
Liefert das benutzerdefinierte Pinselmuster oder eine Null-Pixmap, wenn kein benutzerdefiniertes Pinselmuster festgelegt wurde.
Siehe auch setTexture().
QImage QBrush::textureImage() const
Gibt das benutzerdefinierte Pinselmuster zurück, oder ein Null-Bild, wenn kein benutzerdefiniertes Pinselmuster festgelegt wurde.
Wenn die Textur als QPixmap festgelegt wurde, wird sie in QImage umgewandelt.
Siehe auch setTextureImage().
QTransform QBrush::transform() const
Gibt die aktuelle Transformationsmatrix für den Pinsel zurück.
Siehe auch setTransform().
QVariant QBrush::operator QVariant() const
Gibt den Pinsel als QVariant
bool QBrush::operator!=(const QBrush &brush) const
Gibt true
zurück, wenn sich der Pinsel von dem angegebenen brush unterscheidet; andernfalls wird false
zurückgegeben.
Zwei Pinsel sind unterschiedlich, wenn sie unterschiedliche Stile, Farben oder Transformationen oder unterschiedliche Pixmaps oder Farbverläufe haben, je nach Stil.
Siehe auch operator==().
[noexcept]
QBrush &QBrush::operator=(QBrush &&other)
Verschieben - weist other dieser QBrush Instanz zu.
QBrush &QBrush::operator=(const QBrush &brush)
Weist diesem Pinsel die angegebene brush zu und gibt eine Referenz auf diesen Pinsel zurück.
bool QBrush::operator==(const QBrush &brush) const
Gibt true
zurück, wenn der Pinsel gleich dem angegebenen brush ist; andernfalls wird false
zurückgegeben.
Zwei Pinsel sind gleich, wenn sie die gleichen Stile, Farben und Transformationen und je nach Stil die gleichen Pixmaps oder Farbverläufe haben.
Siehe auch operator!=().
Verwandte Nicht-Mitglieder
QDataStream &operator<<(QDataStream &stream, const QBrush &brush)
Schreibt die angegebene brush in die angegebene stream und gibt eine Referenz auf die stream zurück.
Siehe auch Serialisierung von Qt-Datentypen.
QDataStream &operator>>(QDataStream &stream, QBrush &brush)
Liest die angegebene brush aus der angegebenen stream und gibt eine Referenz auf die stream zurück.
Siehe auch Serialisierung von Qt-Datentypen.
© 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.