Spec-Zone.ru › Qt 5.12

Класс QBrush

Класс QBrush определяет узор заливки фигур, нарисованных с помощью QPainter. Подробнее...

Заголовок: #include <QBrush>
qmake: QT += gui
  • Список всех членов, включая унаследованные

Открытые функции

QBrush()
QBrush(Qt::BrushStyle style)
QBrush(const QColor &color, Qt::BrushStyle style = Qt::SolidPattern)
QBrush(Qt::GlobalColor color, Qt::BrushStyle style = Qt::SolidPattern)
QBrush(const QColor &color, const QPixmap &pixmap)
QBrush(Qt::GlobalColor color, const QPixmap &pixmap)
QBrush(const QPixmap &pixmap)
QBrush(const QImage &image)
QBrush(const QBrush &other)
QBrush(const QGradient &gradient)
~QBrush()
const QColor & color() const
const QGradient * gradient() const
bool isOpaque() const
const QMatrix & matrix() const
void setColor(const QColor &color)
void setColor(Qt::GlobalColor color)
void setMatrix(const QMatrix &matrix)
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=(const QBrush &brush)
QBrush & operator=(QBrush &&other)
bool operator==(const QBrush &brush) const

Связанные нечлены

QDataStream & operator<<(QDataStream &stream, const QBrush &brush)
QDataStream & operator>>(QDataStream &stream, QBrush &brush)

Подробное описание

Класс QBrush определяет узор заливки фигур, нарисованных с помощью QPainter.

Кисть имеет стиль, цвет, градиент и текстуру.

Стиль кисти style() определяет узор заливки, используя перечисление Qt::BrushStyle. По умолчанию стиль кисти Qt::NoBrush (в зависимости от способа создания кисти). Этот стиль сообщает рисовальщику не заливать фигуры. Стандартным стилем заливки является Qt::SolidPattern. Стиль можно установить при создании кисти с помощью соответствующего конструктора, а также функция setStyle() предоставляет возможность изменения стиля после создания кисти.

Brush Styles

Цвет кисти color() определяет цвет узора заливки. Цвет может быть одним из предопределенных цветов Qt, Qt::GlobalColor, или любым другим настраиваемым QColor. Текущий цвет можно получить и изменить с помощью функций color() и setColor() соответственно.

Градиент gradient() определяет градиентную заливку, используемую, когда текущий стиль — это Qt::LinearGradientPattern, Qt::RadialGradientPattern или Qt::ConicalGradientPattern. Кисти градиента создаются путем указания QGradient в качестве аргумента конструктора при создании QBrush. Qt предоставляет три различных градиента: QLinearGradient, QConicalGradient и QRadialGradient — все они наследуют QGradient.

    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);

Текстура texture() определяет пиксель, используемый, когда текущий стиль — Qt::TexturePattern. Кисть с текстурой можно создать, предоставив пиксель при создании кисти или используя setTexture().

Обратите внимание, что применение setTexture() устанавливает style() == Qt::TexturePattern, независимо от предыдущих настроек стиля. Кроме того, вызов setColor() не повлияет, если стиль — градиент. То же самое относится к стилю Qt::TexturePattern, если текущая текстура не является QBitmap.

Функция isOpaque() возвращает true , если кисть полностью непрозрачна, в противном случае false. Кисть считается непрозрачной, если:

  • Компонент альфа текущего color() равен 255.
  • У текстуры texture() нет канала альфа и она не является QBitmap.
  • Все цвета в gradient() имеют компонент альфа, равный 255.
Outlines Для задания стиля и цвета линий и контуров используйте QPainter's pen, совместно с Qt::PenStyle и 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);

Обратите внимание, что по умолчанию QPainter отображает контур (с использованием текущего пера) при рисовании фигур. Используйте painter.setPen(Qt::NoPen), чтобы отключить это поведение.

Дополнительную информацию о рисовании в целом см. в разделе Система рисования.

См. также Qt::BrushStyle, QPainter и QColor.

Документация по функциям членов

QBrush::QBrush()

Создает кисть по умолчанию черного цвета со стилем Qt::NoBrush (то есть эта кисть не будет заливать фигуры).

QBrush::QBrush(Qt::BrushStyle style)

Создаёт кисть чёрного цвета с заданным стилем style.

См. также setStyle().

QBrush::QBrush(const QColor &color, Qt::BrushStyle style = Qt::SolidPattern)

Создаёт кисть с заданным цветом color и стилем style.

См. также setColor() и setStyle().

QBrush::QBrush(Qt::GlobalColor color, Qt::BrushStyle style = Qt::SolidPattern)

Создаёт кисть с заданным цветом color и стилем style.

См. также setColor() и setStyle().

QBrush::QBrush(const QColor &color, const QPixmap &pixmap)

Создаёт кисть с заданным цветом color и пользовательским узором, хранящимся в pixmap.

Стиль устанавливается в Qt::TexturePattern. Цвет будет иметь эффект только для QBitmaps.

См. также setColor() и setTexture().

QBrush::QBrush(Qt::GlobalColor color, const QPixmap &pixmap)

Создаёт кисть с заданным цветом color и пользовательским узором, хранящимся в pixmap.

Стиль устанавливается в Qt::TexturePattern. Цвет будет иметь эффект только для QBitmaps.

См. также setColor() и setTexture().

QBrush::QBrush(const QPixmap &pixmap)

Создаёт кисть с чёрным цветом и текстурой, установленной в заданном pixmap. Стиль устанавливается в Qt::TexturePattern.

См. также setTexture().

QBrush::QBrush(const QImage &image)

Создаёт кисть с чёрным цветом и текстурой, установленной в заданном image. Стиль устанавливается в Qt::TexturePattern.

См. также setTextureImage().

QBrush::QBrush(const QBrush &other)

Создаёт копию other.

QBrush::QBrush(const QGradient &gradient)

Создаёт кисть, основанную на заданном gradient.

Стиль кисти устанавливается в соответствующий стиль градиента (либо Qt::LinearGradientPattern, Qt::RadialGradientPattern, либо Qt::ConicalGradientPattern).

QBrush::~QBrush()

Удаляет кисть.

const QColor &QBrush::color() const

Возвращает цвет кисти.

См. также setColor().

const QGradient *QBrush::gradient() const

Возвращает градиент, описывающий эту кисть.

bool QBrush::isOpaque() const

Возвращает true если кисть полностью непрозрачна, иначе false. Кисть считается непрозрачной, если:

  • Компонент альфа заданного color() равен 255.
  • Её texture() не имеет канала альфа и не является QBitmap.
  • Цвета в gradient() все имеют компонент альфа, равный 255.
  • Это расширенный радиальный градиент.

const QMatrix &QBrush::matrix() const

Возвращает текущую матрицу преобразования для кисти.

Эта функция была добавлена в Qt 4.2.

См. также setMatrix().

void QBrush::setColor(const QColor &color)

Устанавливает цвет кисти на заданный цвет color.

Обратите внимание, что вызов setColor() не повлияет, если стиль является градиентом. То же самое относится к стилю Qt::TexturePattern, за исключением случаев, когда текущая текстура — QBitmap.

См. также color().

void QBrush::setColor(Qt::GlobalColor color)

Это перегруженная функция.

Устанавливает цвет кисти на заданный цвет color.

void QBrush::setMatrix(const QMatrix &matrix)

Устанавливает matrix в качестве явной матрицы преобразования для текущей кисти. Матрица преобразования кисти объединяется с матрицей преобразования QPainter для получения конечного результата.

Эта функция была добавлена в Qt 4.2.

См. также matrix().

void QBrush::setStyle(Qt::BrushStyle style)

Устанавливает стиль кисти на style.

См. также style().

void QBrush::setTexture(const QPixmap &pixmap)

Устанавливает pixmap кисти на pixmap. Стиль устанавливается в Qt::TexturePattern.

Текущий цвет кисти будет иметь эффект только для монохромных pixmap, т.е. для QPixmap::depth() == 1 (QBitmaps).

См. также texture().

void QBrush::setTextureImage(const QImage &image)

Устанавливает изображение кисти на image. Стиль устанавливается в Qt::TexturePattern.

Обратите внимание, что текущий цвет кисти не будет влиять на монохромные изображения, в отличие от вызова setTexture() с QBitmap. Если вы хотите изменить цвет монохромных изображений кистей, либо преобразуйте изображение в QBitmap с помощью QBitmap::fromImage() и установите получившийся QBitmap в качестве текстуры, либо измените записи в таблице цветов для изображения.

Эта функция была добавлена в Qt 4.2.

См. также textureImage() и setTexture().

void QBrush::setTransform(const QTransform &matrix)

Устанавливает matrix в качестве явной матрицы преобразования для текущей кисти. Матрица преобразования кисти объединяется с матрицей преобразования QPainter для получения конечного результата.

Эта функция была добавлена в Qt 4.3.

См. также transform().

Qt::BrushStyle QBrush::style() const

Возвращает стиль кисти.

См. также setStyle().

void QBrush::swap(QBrush &other)

Меняет местами кисть other с этой кистью. Эта операция очень быстрая и никогда не терпит неудачу.

Эта функция была добавлена в Qt 4.8.

QPixmap QBrush::texture() const

Возвращает пользовательский узор кисти или пустую pixmap, если пользовательский узор кисти не был задан.

См. также setTexture().

QImage QBrush::textureImage() const

Возвращает пользовательский узор кисти или пустое изображение, если пользовательский узор кисти не был задан.

Если текстура была задана как QPixmap, она будет преобразована в QImage.

Эта функция была добавлена в Qt 4.2.

См. также setTextureImage().

QTransform QBrush::transform() const

Возвращает текущую матрицу преобразования для кисти.

Эта функция была добавлена в Qt 4.3.

См. также setTransform().

QVariant QBrush::operator QVariant() const

Возвращает кисть как QVariant

bool QBrush::operator!=(const QBrush &brush) const

Возвращает true если кисть отличается от заданной brush; в противном случае возвращает false.

Две кисти различаются, если у них разные стили, цвета или преобразования, или разные pixmaps или градиенты в зависимости от стиля.

См. также operator==().

QBrush &QBrush::operator=(const QBrush &brush)

Присваивает заданную brush этой кисти и возвращает ссылку на эту кисть.

QBrush &QBrush::operator=(QBrush &&other)

Перемещающее присваивание other этому экземпляру QBrush.

Эта функция была добавлена в Qt 5.2.

bool QBrush::operator==(const QBrush &brush) const

Возвращает true если кисть равна заданной brush; в противном случае возвращает false.

Две кисти равны, если у них одинаковые стили, цвета и преобразования, а также одинаковые растровые изображения или градиенты в зависимости от стиля.

См. также operator!=().

Связанные нечлены

QDataStream &operator<<(QDataStream &stream, const QBrush &brush)

Записывает заданную brush в заданный stream и возвращает ссылку на stream.

См. также Сериализация типов данных Qt.

QDataStream &operator>>(QDataStream &stream, QBrush &brush)

Читает заданную brush из заданного stream и возвращает ссылку на stream.

См. также Сериализация типов данных Qt.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qbrush.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API