Spec-Zone.ru › Qt 6.1

Справочник по стилям Qt

Стилевые таблицы Qt поддерживают различные свойства, псевдосостояния и подэлементы, которые позволяют настроить внешний вид виджетов.

Список стилизуемых виджетов

В следующей таблице перечислены виджеты Qt, которые можно настроить с помощью стилевых таблиц:

Виджет Как стилизовать
QAbstractScrollArea Поддерживает модель области.

Все производные от QAbstractScrollArea, включая QTextEdit и QAbstractItemView (все классы представления элементов), поддерживают прокручиваемые фоны с помощью background-attachment. Установка background-attachment в fixed обеспечивает изображение фона, которое не прокручивается вместе с viewport. Установка background-attachment в scroll, прокручивает изображение фона при перемещении полос прокрутки.

См. Настройка QAbstractScrollArea для примера.

QCheckBox Поддерживает модель области. Указатель выбора можно стилизовать с помощью подэлемента ::indicator. По умолчанию указатель размещается в верхнем левом углу прямоугольника содержимого виджета.

Свойство spacing определяет интервал между указателем выбора и текстом.

См. Настройка QCheckBox для примера.

QColumnView Маркер можно стилизовать с помощью свойства image. Стрелки можно стилизовать с помощью подэлементов ::left-arrow и ::right-arrow.
QComboBox Рамку вокруг combobox можно стилизовать с помощью модели области. Кнопку выпадающего списка можно стилизовать с помощью подэлемента ::drop-down. По умолчанию кнопка выпадающего списка размещается в верхнем правом углу прямоугольника отступа виджета. Значок стрелки внутри кнопки выпадающего списка можно стилизовать с помощью подэлемента ::down-arrow. По умолчанию стрелка размещается в центре прямоугольника содержимого подэлемента выпадающего списка.

См. Настройка QComboBox для примера.

QDateEdit См. QSpinBox.
QDateTimeEdit См. QSpinBox.
QDialog Поддерживает только свойства background, background-clip и background-origin.

Предупреждение: Убедитесь, что для вашего пользовательского виджета определен макрос Q_OBJECT.

QDialogButtonBox Макет кнопок можно изменить с помощью свойства button-layout.
QDockWidget Поддерживает стилизацию панели заголовка и кнопок панели заголовка при закреплении.

Границу виджета можно стилизовать с помощью свойства border. Подэлемент ::title можно использовать для настройки панели заголовка. Кнопки закрытия и плавающего окна размещаются относительно подэлемента ::title соответственно с помощью ::close-button и ::float-button.

При вертикальной панели заголовка устанавливается псевдокласс :vertical. Кроме того, в зависимости от QDockWidget::DockWidgetFeature, устанавливаются псевдосостояния :closable, :floatable и :movable.

Примечание: Для стилизации ручки изменения размера используйте QMainWindow::separator.

Предупреждение: Стилевые таблицы не имеют эффекта, когда QDockWidget откреплен, так как Qt использует собственные окна верхнего уровня при откреплении.

См. Настройка QDockWidget для примера.

QDoubleSpinBox См. QSpinBox.
QFrame Поддерживает модель области.

Начиная с версии 4.3, установка стилевой таблицы на QLabel автоматически устанавливает свойство QFrame::frameStyle в QFrame::StyledPanel.

См. Настройка QFrame для примера.

QGroupBox Поддерживает модель области. Заголовок можно стилизовать с помощью подэлемента ::title. По умолчанию заголовок размещается в зависимости от QGroupBox::textAlignment.

В случае проверочного QGroupBox заголовок включает указатель выбора. Указатель стилизуется с помощью подэлемента ::indicator. Свойство spacing может использоваться для управления интервалом между текстом и указателем.

См. Настройка QGroupBox для примера.

QHeaderView Поддерживает модель области. Разделы представления заголовка стилизуются с помощью подэлемента ::section. Подэлемент section поддерживает псевдосостояния :middle, :first, :last, :only-one, :next-selected, :previous-selected, :selected и :checked.

Указатель сортировки можно стилизовать с помощью подэлементов ::up-arrow и ::down-arrow.

См. Настройка QHeaderView для примера.

QLabel Поддерживает модель области. Не поддерживает псевдосостояние :hover.

Начиная с версии 4.3, установка стилевой таблицы на QLabel автоматически устанавливает свойство QFrame::frameStyle в QFrame::StyledPanel.

См. Настройка QFrame для примера (QLabel наследуется от QFrame).

QLineEdit Поддержка модели области.

Цвет и фон выделенного элемента стилизуются с помощью selection-color и selection-background-color соответственно.

Символ пароля можно стилизовать с помощью свойства lineedit-password-character.

Задержка маски пароля может быть изменена с помощью lineedit-password-mask-delay.

См. Настройка QLineEdit для примера.

QListView Поддерживает модель области. При включении альтернативных цветов строк, альтернативные цвета можно стилизовать с помощью свойства alternate-background-color.

Цвет и фон выделенного элемента стилизуются с помощью selection-color и selection-background-color соответственно.

Поведение выбора контролируется свойством show-decoration-selected.

Используйте подэлемент ::item для более тонкого управления элементами в QListView.

См. QAbsractScrollArea для стилизации прокручиваемых фонов.

См. Настройка QListView для примера.

QListWidget См. QListView.
QMainWindow Поддерживает стилизацию разделителя.

Разделитель в QMainWindow при использовании QDockWidget стилизуется с помощью подэлемента ::separator.

См. Настройка QMainWindow для примера.

QMenu Поддерживает модель бокса.

Отдельные элементы стилизуются с помощью подконтроли ::item. В дополнение к обычно поддерживаемым псевдосостояниям, подконтроль ::item поддерживает псевдосостояния :selected, :default, :exclusive и non-exclusive.

Индикатор изменяемых пунктов меню стилизуется с помощью подконтроли ::indicator.

Разделитель стилизуется с помощью подконтроли ::separator.

Для пунктов с подменю метки стрелок стилизуются с помощью правой стрелки и левой стрелки.

Скролл стилизуется с помощью ::scroller.

Отрыв стилизуется с помощью ::tearoff.

См. Настройка QMenu для примера.

QMenuBar Поддерживает модель бокса. Свойство spacing задает интервал между пунктами меню. Отдельные элементы стилизуются с помощью подконтроли ::item.

Предупреждение: При работе на Qt/Mac строка меню обычно встроена в системную строку меню. В этом случае стиль не будет иметь эффекта.

См. Настройка QMenuBar для примера.

QMessageBox Свойство messagebox-text-interaction-flags может быть использовано для изменения взаимодействия с текстом в окне сообщения.
QProgressBar Поддерживает модель бокса. Части прогресс-бара можно стилизовать с помощью подконтроли ::chunk. Часть отображается в прямоугольнике содержимого виджета.

Если прогресс-бар отображает текст, используйте свойство text-align для позиционирования текста.

У неопределенных прогресс-баров установлено псевдосостояние :indeterminate.

См. Настройка QProgressBar для примера.

QPushButton Поддерживает модель бокса. Поддерживает псевдосостояния :default, :flat, :checked.

Начиная с версии 5.15, свойство icon может быть установлено для переопределения значка кнопки.

Для QPushButton с меню индикатор меню стилизуется с помощью подконтроли ::menu-indicator. Внешний вид изменяемых кнопок можно настроить с помощью псевдосостояний :open и :closed.

Предупреждение: Если вы установили только background-color для QPushButton, фон может не отобразиться, пока вы не установите свойство border. Это происходит потому, что по умолчанию QPushButton рисует родной border, который полностью перекрывает background-color. Например,

QPushButton { background-color: red; border: none; }

См. Настройка QPushButton для примера.

QRadioButton Поддерживает модель бокса. Индикатор проверки можно стилизовать с помощью подконтроли ::indicator. По умолчанию индикатор помещается в верхний левый угол прямоугольника содержимого виджета.

Свойство spacing задает интервал между индикатором проверки и текстом.

См. Настройка QRadioButton для примера.

QScrollBar Поддерживает модель бокса. Прямоугольник содержимого виджета рассматривается как желобок, по которому перемещается ползунок. Размер QScrollBar (т. е. ширина или высота в зависимости от ориентации) устанавливается с помощью свойства width или height соответственно. Чтобы определить ориентацию, используйте псевдосостояния :horizontal и :vertical.

Ползунок можно стилизовать с помощью подконтроли ::handle. Установка min-width или min-height задаёт ограничения размера для ползунка в зависимости от ориентации.

Подконтроль ::add-line используется для стилизации кнопки добавления строки. По умолчанию подконтроль add-line размещается в правом верхнем углу прямоугольника границы виджета. В зависимости от ориентации отображается ::right-arrow или ::down-arrow. По умолчанию стрелки размещаются в центре прямоугольника содержимого подконтроли add-line.

Подконтроль ::sub-line используется для стилизации кнопки уменьшения строки. По умолчанию подконтроль sub-line размещается в правом нижнем углу прямоугольника границы виджета. В зависимости от ориентации отображается ::left-arrow или ::up-arrow. По умолчанию стрелки размещаются в центре прямоугольника содержимого подконтроли sub-line.

Подконтроль ::sub-page используется для стилизации области ползунка, уменьшающей страницу. Подконтроль ::add-page используется для стилизации области ползунка, увеличивающей страницу.

См. Настройка QScrollBar для примера.

QSizeGrip Поддерживает свойства width, height и image.

См. Настройка QSizeGrip для примера.

QSlider Поддерживает модель бокса. Для горизонтальных ползунков должны быть заданы свойства min-width и height. Для вертикальных ползунков должны быть заданы свойства min-height и width.

Желобок ползунка стилизуется с помощью ::groove. По умолчанию желобок размещается в прямоугольнике содержимого виджета. Ползунок ползунка стилизуется с помощью подконтроли ::handle. Подконтроль перемещается в прямоугольнике содержимого подконтроли желобка.

См. Настройка QSlider для примера.

QSpinBox Рамка спин-бокса может быть стилизована с помощью модели бокса.

Кнопка и стрелка вверх могут быть стилизованы с помощью подконтролей ::up-button и ::up-arrow. По умолчанию кнопка вверх размещается в правом верхнем углу в прямоугольнике отступа виджета. Без явного размера она занимает половину высоты своего прямоугольника-ссылка. Стрелка вверх размещается в центре прямоугольника содержимого кнопки вверх.

Кнопка и стрелка вниз могут быть стилизованы с помощью подконтролей ::down-button и ::down-arrow. По умолчанию кнопка вниз размещается в правом нижнем углу в прямоугольнике отступа виджета. Без явного размера она занимает половину высоты своего прямоугольника-ссылка. Нижняя стрелка размещается в центре прямоугольника содержимого нижней кнопки.

См. Настройка QSpinBox для примера.

QSplitter Поддерживает модель бокса. Ручка разделителя стилизуется с помощью подконтроли ::handle.

См. Настройка QSplitter для примера.

QStatusBar Поддерживает только свойство background. Рамку для отдельных элементов можно стилизовать с помощью подконтроли ::item.

См. Настройка QStatusBar для примера.

QTabBar Индивидуальные вкладки могут быть стилизованы с помощью подконтроли ::tab. Кнопки закрытия с помощью подконтроли ::close-button. Вкладки поддерживают псевдосостояния :only-one, :first, :last, :middle, :previous--selected, :next-selected, :selected.

Псевдосостояния :top, :left, :right, :bottom зависят от ориентации вкладок.

Перекрывающиеся вкладки для выделенного состояния создаются с помощью отрицательных отступов или схемы позиционирования absolute.

Индикатор разрыва QTabBar стилизуется с помощью подконтроли ::tear.

QTabBar использует две QToolButton для своих полос прокрутки, которые можно стилизовать с помощью селектора QTabBar QToolButton. Для указания ширины кнопки прокрутки используйте подконтроль ::scroller.

Выравнивание вкладок в QTabBar стилизуется свойством выравнивания.

Предупреждение:

Чтобы изменить положение QTabBar в QTabWidget, используйте подконтроль tab-bar (и установите subcontrol-position).

См. Настройка QTabBar для примера.

QTabWidget Рамка виджета вкладок стилизуется с помощью подконтроли ::pane. Левые и правые углы стилизуются соответственно с помощью подконтролей ::left-corner и ::right-corner. Положение панели вкладок контролируется с помощью подконтроли ::tab-bar.

По умолчанию, подконтроли имеют позиции QTabWidget в QWindowsStyle. Чтобы разместить QTabBar по центру, установите subcontrol-position подконтроли tab-bar.

Псевдосостояния :top, :left, :right, :bottom зависят от ориентации вкладок.

См. Настройка QTabWidget для примера.

QTableView Поддерживает модель ящика. При включении альтернативных цветов строк, альтернативные цвета можно стилизовать, используя свойство alternate-background-color.

Цвет и фон выделенного элемента стилизуются соответственно с помощью selection-color и selection-background-color.

Виджет угла в QTableView реализован как QAbstractButton и может быть стилизован с помощью селектора "QTableView QTableCornerButton::section".

Предупреждение: Если вы зададите только background-color для QTableCornerButton, фон может не отобразиться, если не задать свойство border. Это происходит потому, что по умолчанию QTableCornerButton рисует родную границу, которая полностью перекрывает background-color.

Цвет сетки можно указать с помощью свойства gridline-color.

См. QAbsractScrollArea для стилизации прокручиваемых фонов.

См. Настройка QTableView для примера.

QTableWidget См. QTableView.
QTextEdit Поддерживает модель ящика.

Цвет и фон выделенного текста стилизуются соответственно с помощью selection-color и selection-background-color.

См. QAbsractScrollArea для стилизации прокручиваемых фонов.

QTimeEdit См. QSpinBox.
QToolBar Поддерживает модель ящика.

Псевдосостояния :top, :left, :right, :bottom зависят от области, в которой группа инструментов.

Псевдосостояния :first, :last, :middle, :only-one показывают положение панели инструментов в группе строк (см. QStyleOptionToolBar::positionWithinLine).

Разделитель QToolBar стилизуется с помощью подконтроли ::separator.

Ручка (для перемещения панели инструментов) стилизуется с помощью подконтроли ::handle.

См. Настройка QToolBar для примера.

QToolButton Поддерживает модель ящика.

Если у QToolButton есть меню, то можно использовать подконтроль ::menu-indicator для стилизации индикатора. По умолчанию индикатор меню расположен в нижнем правом углу прямоугольника отступа виджета.

Если QToolButton находится в режиме QToolButton::MenuButtonPopup, используется подконтроль ::menu-button для отрисовки кнопки меню. Подконтроль ::menu-arrow используется для отрисовки стрелки меню внутри кнопки меню. По умолчанию он расположен в центре прямоугольника содержимого подконтроли menu-button.

Когда QToolButton отображает стрелки, используются подконтроли ::up-arrow, ::down-arrow, ::left-arrow и ::right-arrow.

Предупреждение: Если вы зададите только background-color для QToolButton, фон не отобразится, если не задать свойство border. Это происходит потому, что по умолчанию QToolButton рисует родную границу, которая полностью перекрывает background-color. Например,

QToolButton { background-color: red; border: none; }

См. Настройка QToolButton для примера.

QToolBox Поддерживает модель ящика.

Индивидуальные вкладки могут быть стилизованы с помощью подконтроли ::tab. Вкладки поддерживают псевдосостояния :only-one, :first, :last, :middle, :previous-selected, :next-selected, :selected.

QToolTip Поддерживает модель ящика. Свойство opacity управляет непрозрачностью всплывающей подсказки.

См. Настройка QFrame для примера (всплывающая подсказка QToolTip является QFrame).

QTreeView Поддерживает модель ящика. При включении альтернативных цветов строк, альтернативные цвета можно стилизовать, используя свойство alternate-background-color.

Цвет и фон выделенного элемента стилизуются соответственно с помощью selection-color и selection-background-color.

Поведение выделения контролируется свойством show-decoration-selected.

Ветви дерева можно стилизовать с помощью подконтроли ::branch. Подконтроль ::branch поддерживает псевдосостояния :open, :closed, :has-sibling и :has-children.

Используйте подконтроль ::item для более точного управления элементами в QTreeView.

См. QAbsractScrollArea для стилизации прокручиваемых фонов.

См. Настройка QTreeView для примера стилизации веток.

QTreeWidget См. QTreeView.
QWidget Поддерживает только свойства background, background-clip и background-origin.

Если вы наследуете от QWidget, вам необходимо предоставить paintEvent для вашего пользовательского QWidget, как показано ниже:

void CustomWidget::paintEvent(QPaintEvent *)
{
    QStyleOption opt;
    opt.init(this);
    QPainter p(this);
    style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
}

Вышеприведенный код не выполняет никаких действий, если стиль не задан.

Предупреждение: Убедитесь, что вы определили макрос Q_OBJECT для вашего пользовательского виджета.

Список свойств

В таблице ниже перечислены все свойства, поддерживаемые стилями Qt. Какие значения можно присвоить свойству, зависит от типа свойства. Если не указано иное, свойства ниже применяются ко всем виджетам. Свойства, помеченные звездочкой *, специфичны для Qt и не имеют эквивалента в CSS2 или CSS3.

Свойство Тип Описание
alternate-background-color Кисть Цвет фона, используемый поочерёдно в подклассах QAbstractItemView.

Если это свойство не задано, используется значение свойства AlternateBase палитры.

Пример:

QTreeView {
    alternate-background-color: blue;
    background: yellow;
}

См. также background и selection-background-color.

background Фон Сокращённая запись для задания фона. Эквивалентно указанию background-color, background-image, background-repeat, и/или background-position.

Это свойство поддерживается подклассами QAbstractItemView, QAbstractSpinBox, QCheckBox, QComboBox, QDialog, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSplitter, QTextEdit, QToolTip и обычными виджетами QWidget.

Пример:

QTextEdit { background: yellow }

Часто требуется установить узор заливки, аналогичный стилям в Qt::BrushStyle. Для Qt::SolidPattern, Qt::RadialGradientPattern, Qt::LinearGradientPattern и Qt::ConicalGradientPattern можно использовать свойство background-color. Другие узоры легко создаются с помощью фоновой картинки, содержащей узор.

Пример:

QLabel {
    background-image: url(dense6pattern.png);
    background-repeat: repeat-xy;
}

См. также background-origin, selection-background-color, background-clip, background-attachment и alternate-background-color.

background-color Кисть Цвет фона виджета.

Примеры:

QLabel { background-color: yellow }
QLineEdit { background-color: rgb(255, 0, 0) }
background-image URL Фоновая картинка виджета. Полупрозрачные части изображения позволяют просвечивать background-color.

Пример:

QFrame { background-image: url(:/images/hydro.png) }
background-repeat Повторение Как и где фоновая картинка повторяется, чтобы заполнить прямоугольник background-origin.

Если это свойство не указано, фоновая картинка повторяется во всех направлениях (repeat).

Пример:

QFrame {
    background: white url(:/images/ring.png);
    background-repeat: repeat-y;
    background-position: left;
}
background-position Выравнивание Выравнивание фоновой картинки внутри прямоугольника background-origin.

Если это свойство не указано, выравнивание по top left.

Пример:

QFrame {
    background: url(:/images/footer.png);
    background-position: bottom left;
}
background-attachment Прикрепление Определяет, прокручивается ли фоновая картинка в QAbstractScrollArea или закреплена относительно области просмотра. По умолчанию, фоновая картинка прокручивается вместе с областью просмотра.

Пример:

QTextEdit {
    background-image: url("leaves.png");
    background-attachment: fixed;
}

См. также background

background-clip Начало Прямоугольник виджета, в котором рисуется background.

Это свойство задаёт прямоугольник, к которому обрезаются background-color и background-image.

Это свойство поддерживается подклассами QAbstractItemView, QAbstractSpinBox, QCheckBox, QComboBox, QDialog, QFrame, QGroupBox, QLabel, QPushButton, QRadioButton, QSplitter, QTextEdit, QToolTip и обычными виджетами QWidget.

Если это свойство не задано, используется значение по умолчанию border.

Пример:

QFrame {
    background-image: url(:/images/header.png);
    background-position: top left;
    background-origin: content;
    background-clip: padding;
}

См. также background, background-origin и Модель области.

background-origin Начало Прямоугольник фона виджета, для использования совместно с background-position и background-image.

Это свойство поддерживается подклассами QAbstractItemView, QAbstractSpinBox, QCheckBox, QComboBox, QDialog, QFrame, QGroupBox, QLabel, QPushButton, QRadioButton, QSplitter, QTextEdit, QToolTip и обычными виджетами QWidget.

Если это свойство не задано, используется значение по умолчанию padding.

Пример:

QFrame {
    background-image: url(:/images/header.png);
    background-position: top left;
    background-origin: content;
}

См. также background и Модель области.

border Граница Сокращённая запись для задания границы виджета. Эквивалентно указанию border-color, border-style, и/или border-width.

Это свойство поддерживается подклассами QAbstractItemView, QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSplitter, QTextEdit, QToolTip и обычными виджетами QWidget.

Пример:

QLineEdit { border: 1px solid white }
border-top Граница Сокращённая запись для задания верхней границы виджета. Эквивалентно указанию border-top-color, border-top-style, и/или border-top-width.
border-right Граница Сокращённая запись для задания правой границы виджета. Эквивалентно указанию border-right-color, border-right-style, и/или border-right-width.
border-bottom Граница Сокращённая запись для задания нижней границы виджета. Эквивалентно указанию border-bottom-color, border-bottom-style, и/или border-bottom-width.
border-left Граница Сокращённая запись для задания левой границы виджета. Эквивалентно указанию border-left-color, border-left-style, и/или border-left-width.
border-color Цвета области Цвет всех граней границы. Эквивалентно указанию border-top-color, border-right-color, border-bottom-color, и border-left-color.

Это свойство поддерживается подклассами QAbstractItemView, QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSplitter, QTextEdit, QToolTip и обычными виджетами QWidget.

Если это свойство не задано, оно по умолчанию равно цвет (т.е., цвет переднего плана виджета).

Пример:

QLineEdit {
    border-width: 1px;
    border-style: solid;
    border-color: white;
}

См. также border-style, border-width, border-image, и Модель области.

border-top-color Кисть Цвет верхней грани границы.
border-right-color Кисть Цвет правой грани границы.
border-bottom-color Кисть Цвет нижней грани границы.
border-left-color Кисть Цвет левой грани границы.
border-image Образ рамки Изображение, используемое для заполнения рамки. Изображение разбивается на девять частей и растягивается по мере необходимости. Подробнее см. Образ рамки.

Этот свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSplitter, QTextEdit и QToolTip.

См. также цвет рамки, стиль рамки, ширина рамки и Модель области.

border-radius Радиус Радиус углов рамки. Эквивалентно указанию border-top-left-radius, border-top-right-radius, border-bottom-right-radius, и border-bottom-left-radius.

Радиус рамки обрезает фон элемента.

Это свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSplitter, QTextEdit и QToolTip.

Если это свойство не указано, оно по умолчанию равно 0.

Пример:

QLineEdit {
    border-width: 1px;
    border-style: solid;
    border-radius: 4px;
}

См. также ширину рамки и Модель области.

border-top-left-radius Радиус Радиус верхнего левого угла рамки.
border-top-right-radius Радиус Радиус верхнего правого угла рамки.
border-bottom-right-radius Радиус Радиус нижнего правого угла рамки. Установка этого свойства в положительное значение приводит к закругленному углу.
border-bottom-left-radius Радиус Радиус нижнего левого угла рамки. Установка этого свойства в положительное значение приводит к закругленному углу.
border-style Стиль рамки Стиль всех краев рамки.

Это свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSplitter, QTextEdit и QToolTip.

Если это свойство не указано, оно по умолчанию равно none.

Пример:

QLineEdit {
    border-width: 1px;
    border-style: solid;
    border-color: blue;
}

См. также цвет рамки, стиль рамки, образ рамки и Модель области.

border-top-style Стиль рамки Стиль верхнего края рамки.
border-right-style Стиль рамки Стиль правого края рамки.
border-bottom-style Стиль рамки Стиль нижнего края рамки.
border-left-style Стиль рамки Стиль левого края рамки.
border-width Размеры области Ширина рамки. Эквивалентно установке border-top-width, border-right-width, border-bottom-width, и border-left-width.

Это свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSplitter, QTextEdit и QToolTip.

Пример:

QLineEdit {
    border-width: 2px;
    border-style: solid;
    border-color: darkblue;
}

См. также цвет рамки, радиус рамки, стиль рамки, образ рамки и Модель области.

border-top-width Длина Ширина верхнего края рамки.
border-right-width Длина Ширина правого края рамки.
border-bottom-width Длина Ширина нижнего края рамки.
border-left-width Длина Ширина левого края рамки.
bottom Длина Если позиция равна relative (по умолчанию), перемещает подэлемент вверх на определенный смещение; указание bottom: y тогда эквивалентно указанию top: -y.

Если позиция равна absolute, свойство bottom указывает нижний край подэлемента относительно нижнего края родительского элемента (см. также начало подэлемента).

Пример:

QSpinBox::down-button { bottom: 2px }

См. также слева, справа и сверху.

button-layout Число Макет кнопок в QDialogButtonBox или QMessageBox. Возможные значения: 0 (WinLayout), 1 (MacLayout), 2 (KdeLayout), 3 (GnomeLayout) и 5 (AndroidLayout).

Если это свойство не указано, оно по умолчанию равно значению, заданному текущим стилем для стилевого намека SH_DialogButtonLayout.

Пример:

* { button-layout: 2 }
color Кисть Цвет, используемый для отображения текста.

Это свойство поддерживается всеми виджетами, которые учитывают QWidget::palette.

Если это свойство не задано, по умолчанию используется значение, заданное в палитре виджета для QWidget::foregroundRole (обычно черный).

Пример:

QPushButton { color: red }

См. также фон и цвет выделения.

dialogbuttonbox-buttons-have-icons Булево Показывать ли значки на кнопках в QDialogButtonBox.

Если это свойство установлено в 1, кнопки QDialogButtonBox отображают значки; если установлено в 0, значки не отображаются.

См. раздел Список значков для получения информации о настройке значков.

QDialogButtonBox { dialogbuttonbox-buttons-have-icons: 1; }

Примечание: Стилям, определяющим это свойство, необходимо быть применённым до создания QDialogButtonBox; это означает, что вы должны применить стиль к родительскому виджету или к самому приложению.

font Шрифт Сокращенная запись для установки шрифта текста. Эквивалентно указанию font-family, font-size, font-style, и/или font-weight.

Это свойство поддерживается всеми виджетами, которые учитывают QWidget::font.

Если это свойство не установлено, используется значение по умолчанию QWidget::font.

Пример:

QCheckBox { font: bold italic large "Times New Roman" }
font-family Строка Начертание шрифта.

Пример:

QCheckBox { font-family: "New Century Schoolbook" }
font-size Размер шрифта Размер шрифта. В этой версии Qt поддерживаются только метрики pt и px.

Пример:

QTextEdit { font-size: 12px }
font-style Стиль шрифта Стиль шрифта.

Пример:

QTextEdit { font-style: italic }
font-weight Начертание шрифта Начертание шрифта.
gridline-color* Цвет Цвет линии сетки в QTableView.

Если этот параметр не указан, он по умолчанию принимает значение, заданное текущей стилем для стилистического подсказки SH_Table_GridLineColor.

Пример:

* { gridline-color: gray }
height Длина Высота подэлемента (или в некоторых случаях виджета).

Если этот параметр не указан, он по умолчанию принимает значение, зависящее от подэлемента/виджета и текущей стилистики.

Предупреждение: Если не указано иное, этот параметр не имеет эффекта при настройке на виджеты. Если вам нужен виджет с фиксированной высотой, установите min-height и max-height на одно и то же значение.

Пример:

QSpinBox::down-button { height: 10px }

См. также width.

icon Url+ Иконка, используемая для виджетов, имеющих иконку.

В настоящее время этот параметр поддерживается только виджетом QPushButton.

Примечание: Ответственность за назначение иконки кнопке (с использованием API QAbstractButton) лежит на приложении, а не на стилистике. Поэтому будьте осторожны при его настройке, если ваша стилистика не направлена на конкретное приложение.

Доступно начиная с версии 5.15.

icon-size Длина Ширина и высота иконки в виджете.

Размер иконки следующих виджетов может быть настроен с помощью этого параметра:

  • QCheckBox
  • QListView
  • QPushButton
  • QRadioButton
  • QTabBar
  • QToolBar
  • QToolBox
  • QTreeView
image* Url+ Изображение, отображаемое в прямоугольнике содержимого подэлемента.

Свойство image принимает список Url или svg. Фактическое отображаемое изображение определяется с помощью того же алгоритма, что и QIcon (т.е.) изображение никогда не масштабируется вверх, но всегда масштабируется вниз при необходимости. Если указан svg, изображение масштабируется до размера прямоугольника содержимого.

Установка свойства image для подэлементов неявно устанавливает ширину и высоту подэлемента (если изображение не в формате SVG).

В Qt 4.3 и более поздних версиях выравнивание изображения внутри прямоугольника можно указать с помощью image-position.

Это свойство предназначено только для подэлементов — для других элементов оно не поддерживается.

Предупреждение: Для отображения изображений SVG необходим плагин SVG для QIcon.

Пример:

// implicitly sets the size of down-button to the
// size of spindown.png
QSpinBox::down-button { image: url(:/images/spindown.png) }
image-position выравнивание В Qt 4.3 и более поздних версиях выравнивание изображения можно указать с помощью относительного или абсолютного положения.
left Длина Если position равно relative (по умолчанию), смещает подэлемент на определенное смещение вправо.

Если position равно absolute, свойство left определяет левую границу подэлемента относительно левой границы родителя (см. также subcontrol-origin).

Если этот параметр не указан, он по умолчанию равен 0.

Пример:

QSpinBox::down-button { left: 2px }

См. также right, top и bottom.

lineedit-password-character* Число Символ пароля для QLineEdit как число Юникода.

Если этот параметр не указан, он по умолчанию принимает значение, заданное текущей стилистикой для стилистического подсказки SH_LineEdit_PasswordCharacter.

Пример:

* { lineedit-password-character: 9679 }
lineedit-password-mask-delay* Число Задержка маски пароля QLineEdit в миллисекундах до того, как lineedit-password-character применяется к отображаемому символу.

Если этот параметр не указан, он по умолчанию принимает значение, заданное текущей стилистикой для стилистического подсказки SH_LineEdit_PasswordMaskDelay.

Это свойство было добавлено в Qt 5.4.

Пример:

* { lineedit-password-mask-delay: 1000 }
margin Размеры области Поля виджета. Эквивалентно указанию margin-top, margin-right, margin-bottom, и margin-left.

Это свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSplitter, QTextEdit и QToolTip.

Если этот параметр не указан, он по умолчанию равен 0.

Пример:

QLineEdit { margin: 2px }

См. также padding, spacing и Модель области.

margin-top Длина Верхнее поле виджета.
margin-right Длина Правое поле виджета.
margin-bottom Длина Нижнее поле виджета.
margin-left Длина Левое поле виджета.
max-height Длина Максимальная высота виджета или подэлемента.

Это свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSizeGrip, QSpinBox, QSplitter, QStatusBar, QTextEdit и QToolTip.

Значение относительно прямоугольника содержимого в модели области.

Пример:

QSpinBox { max-height: 24px }

См. также max-width.

max-width Длина Максимальная ширина виджета или подэлемента.

Это свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSizeGrip, QSpinBox, QSplitter, QStatusBar, QTextEdit и QToolTip.

Значение относительно прямоугольника содержимого в модели области.

Пример:

QComboBox { max-width: 72px }

См. также max-height.

messagebox-text-interaction-flags* Число Поведение взаимодействия для текста в окне сообщения. Возможные значения основаны на Qt::TextInteractionFlags.

Если этот параметр не указан, он по умолчанию принимает значение, заданное текущей стилистикой для стилистического подсказки SH_MessageBox_TextInteractionFlags.

Пример:

QMessageBox { messagebox-text-interaction-flags: 5 }
min-height Длина Минимальная высота виджета или подэлемента.

Это свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSizeGrip, QSpinBox, QSplitter, QStatusBar, QTextEdit и QToolTip.

Если это свойство не указано, минимальная высота определяется на основе содержимого виджета и стиля.

Значение относительно прямоугольника содержимого в модели размещения элементов.

Пример:

QComboBox { min-height: 24px }

См. также min-width.

min-width Длина Минимальная ширина виджета или подэлемента.

Это свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSizeGrip, QSpinBox, QSplitter, QStatusBar, QTextEdit и QToolTip.

Если это свойство не указано, минимальная ширина определяется на основе содержимого виджета и стиля.

Значение относительно прямоугольника содержимого в модели размещения элементов.

Пример:

QComboBox { min-width: 72px }

См. также min-height.

opacity* Число Непрозрачность виджета. Возможные значения от 0 (прозрачный) до 255 (непрозрачный). Пока что поддерживается только для инструментальных подсказок.

Если это свойство не указано, оно по умолчанию равно значению, указанному текущим стилем для стилевого подсказки SH_ToolTipLabel_Opacity.

Пример:

QToolTip { opacity: 223 }
контур Контур, нарисованный вокруг границы объекта.
контур-цвет Цвет Цвет контура. См. также border-color
смещение-контура Длина Смещение контура от границы виджета.
стиль-контура Задает шаблон, используемый для рисования контура. См. также border-style
радиус-контура Добавляет скругленные углы к контуру.
радиус-контура-вниз-слева Радиус Радиус для скругленного нижнего левого угла контура.
радиус-контура-вниз-справа Радиус Радиус для скругленного нижнего правого угла контура.
радиус-контура-верх-слева Радиус Радиус для верхнего левого угла контура.
радиус-контура-верх-справа Радиус Радиус для верхнего правого угла контура.
padding Размеры поля Отступ виджета. Эквивалентно указанию padding-top, padding-right, padding-bottom, и padding-left.

Это свойство поддерживается подклассами QAbstractItemView, подклассами QAbstractSpinBox, QCheckBox, QComboBox, QFrame, QGroupBox, QLabel, QLineEdit, QMenu, QMenuBar, QPushButton, QRadioButton, QSplitter, QTextEdit и QToolTip.

Если это свойство не указано, оно по умолчанию равно 0.

Пример:

QLineEdit { padding: 3px }

См. также margin, spacing и Модель размещения элементов.

padding-top Длина Верхний отступ виджета.
padding-right Длина Правый отступ виджета.
padding-bottom Длина Нижний отступ виджета.
padding-left Длина Левый отступ виджета.
paint-alternating-row-colors-for-empty-area bool Определяет, рисует ли QTreeView альтернативные цвета строк для пустой области (т.е. области, где нет элементов)
position relative | absolute Определяет, являются ли смещения, указанные с помощью left, right, top и bottom, относительными или абсолютными координатами.

Если это свойство не указано, оно по умолчанию равно relative.

right Длина Если position равно relative (по умолчанию), смещает подэлемент на определенное смещение влево; указание right: x тогда эквивалентно указанию left: -x.

Если position равно absolute, свойство right определяет правое ребро подэлемента по отношению к правому ребру родительского элемента (см. также subcontrol-origin).

Пример:

QSpinBox::down-button { right: 2px }

См. также left, top и bottom.

selection-background-color* Заливка Фон выделенного текста или элементов.

Это свойство поддерживается всеми виджетами, которые учитывают QWidget::palette и отображают выделенный текст.

Если это свойство не задано, значение по умолчанию — то, что задано для роли Highlight палитры.

Пример:

QTextEdit { selection-background-color: darkblue }

См. также selection-color и background.

selection-color* Заливка Передний план выделенного текста или элементов.

Это свойство поддерживается всеми виджетами, которые учитывают QWidget::palette и отображают выделенный текст.

Если это свойство не задано, значение по умолчанию — то, что задано для роли HighlightedText палитры.

Пример:

QTextEdit { selection-color: white }

См. также selection-background-color и color.

show-decoration-selected* Булево Управляет тем, охватывает ли выделение в QListView всю строку или только область текста.

Если это свойство не указано, оно по умолчанию равно значению, указанному текущим стилем для стилевого подсказки SH_ItemView_ShowDecorationSelected.

Пример:

* { show-decoration-selected: 1 }
spacing* Длина Внутреннее расстояние в виджете.

Это свойство поддерживается QCheckBox, флажковыми QGroupBox, QMenuBar и QRadioButton.

Если это свойство не указано, значение по умолчанию зависит от виджета и текущего стиля.

Пример:

QMenuBar { spacing: 10 }

См. также padding и margin.

subcontrol-origin* Начальная точка Прямоугольник начала подэлемента внутри родительского элемента.

Если это свойство не указано, по умолчанию является padding.

Пример:

QSpinBox::up-button {
    image: url(:/images/spinup.png);
    subcontrol-origin: content;
    subcontrol-position: right top;
}

См. также subcontrol-position.

subcontrol-position* Выравнивание Выравнивание подэлемента внутри прямоугольника начала, указанного в subcontrol-origin.

Если это свойство не указано, значение по умолчанию зависит от подэлемента.

Пример:

QSpinBox::down-button {
    image: url(:/images/spindown.png);
    subcontrol-origin: padding;
    subcontrol-position: right bottom;
}

См. также subcontrol-origin.

titlebar-show-tooltips-on-buttons} bool Показывать ли всплывающие подсказки на кнопках панели заголовка окна.
widget-animation-duration* Число Сколько миллисекунд должно длиться анимация. Значение, равное нулю, означает, что анимации будут отключены.

Если этот параметр не задан, он по умолчанию принимает значение, указанное в текущем стиле для стилистической подсказки SH_Widget_Animation_Duration.

Этот параметр был добавлен в Qt 5.10.

Пример:

* { widget-animation-duration: 100 }
text-align Выравнивание Выравнивание текста и значка внутри содержимого виджета.

Если это значение не указано, оно по умолчанию принимает значение, зависящее от родного стиля.

Пример:

QPushButton {
    text-align: left;
}

В настоящее время этот параметр поддерживается только QPushButton и QProgressBar.

text-decoration none underline overline line-through Дополнительные эффекты текста
top Длина Если position имеет значение relative (по умолчанию), перемещает подэлемент на определённый сдвиг вниз.

Если position имеет значение absolute, параметр top определяет верхнюю границу подэлемента по отношению к верхней границе родителя (см. также subcontrol-origin).

Если этот параметр не задан, он по умолчанию равен 0.

Пример:

QSpinBox::up-button { top: 2px }

См. также left, right и bottom.

width Длина Ширина подэлемента (или виджета в некоторых случаях).

Если этот параметр не задан, он по умолчанию принимает значение, зависящее от подэлемента/виджета и текущего стиля.

Предупреждение: Если не указано иное, этот параметр не оказывает влияния при установке на виджеты. Если вы хотите виджет с фиксированной шириной, установите min-width и max-width на одно и то же значение.

Пример:

QSpinBox::up-button { width: 12px }

См. также height.

-qt-background-role PaletteRole Роль background-color для подэлемента или виджета на основе выбранной роли.
-qt-style-features list Список свойств CSS, на которых вы хотите применить специфичные для Qt стили.

Примечание: Список list может содержать только свойства, которые не основаны на растровых изображениях.

Список значков

Значки, используемые в Qt, можно настраивать с помощью следующих свойств. Каждое из перечисленных свойств имеет тип Значок.

Обратите внимание, что для отображения значков на кнопках в QDialogButtonBox необходимо установить свойство dialogbuttonbox-buttons-have-icons в значение true. Также для настройки размера значков используйте свойство icon-size.

Имя QStyle::StandardPixmap
стрелка-назад QStyle::SP_ArrowBack
значок-CD QStyle::SP_DriveCDIcon
значок-компьютер QStyle::SP_ComputerIcon
значок-рабочий стол QStyle::SP_DesktopIcon
значок-применить QStyle::SP_DialogApplyButton
значок-отмена QStyle::SP_DialogCancelButton
значок-закрыть QStyle::SP_DialogCloseButton
значок-отбросить QStyle::SP_DialogDiscardButton
значок-помощь QStyle::SP_DialogHelpButton
значок-нет QStyle::SP_DialogNoButton
значок-ок QStyle::SP_DialogOkButton
значок-открыть QStyle::SP_DialogOpenButton
значок-сбросить QStyle::SP_DialogResetButton
значок-сохранить QStyle::SP_DialogSaveButton
значок-да QStyle::SP_DialogYesButton
закрытая папка QStyle::SP_DirClosedIcon
значок-папка QStyle::SP_DirIcon
значок-ссылка на папку QStyle::SP_DirLinkIcon
открытая папка QStyle::SP_DirOpenIcon
значок-закрыть вкладку QStyle::SP_DockWidgetCloseButton
стрелка-вниз QStyle::SP_ArrowDown
значок-DVD QStyle::SP_DriveDVDIcon
значок-файл QStyle::SP_FileIcon
значок-ссылка на файл QStyle::SP_FileLinkIcon
значок-содержимое диалога файла QStyle::SP_FileDialogContentsView
значок-подробный вид диалога файла QStyle::SP_FileDialogDetailedView
значок-конец диалога файла QStyle::SP_FileDialogEnd
значок-информационный вид диалога файла QStyle::SP_FileDialogInfoView
значок-список диалога файла QStyle::SP_FileDialogListView
значок-новая папка диалога файла QStyle::SP_FileDialogNewFolder
значок-родительская папка диалога файла QStyle::SP_FileDialogToParent
значок-начало диалога файла QStyle::SP_FileDialogStart
значок-дискета QStyle::SP_DriveFDIcon
стрелка-вперед QStyle::SP_ArrowForward
значок-жёсткий диск QStyle::SP_DriveHDIcon
значок-дом QStyle::SP_DirHomeIcon
значок-очистить поле ввода QStyle::SP_LineEditClearButton
стрелка-влево QStyle::SP_ArrowLeft
значок-критическая ошибка QStyle::SP_MessageBoxCritical
значок-информация QStyle::SP_MessageBoxInformation
значок-вопрос QStyle::SP_MessageBoxQuestion
значок-предупреждение QStyle::SP_MessageBoxWarning
значок-сеть QStyle::SP_DriveNetIcon
стрелка-вправо QStyle::SP_ArrowRight
значок-справка контекста в заголовке QStyle::SP_TitleBarContextHelpButton
значок-развернуть в заголовке QStyle::SP_TitleBarMaxButton
значок-меню в заголовке QStyle::SP_TitleBarMenuButton
значок-свернуть в заголовке QStyle::SP_TitleBarMinButton
значок-обычный в заголовке QStyle::SP_TitleBarNormalButton
значок-спрятать в заголовке QStyle::SP_TitleBarShadeButton
значок-отобразить в заголовке QStyle::SP_TitleBarUnshadeButton
значок-корзина QStyle::SP_TrashIcon
стрелка-вверх QStyle::SP_ArrowUp

Список типов свойств

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

Тип Синтаксис Описание
Выравнивание { top | bottom | left | right | center }* Горизонтальное и/или вертикальное выравнивание.

Пример:

QTextEdit { background-position: bottom center }
Прикрепление { scroll | fixed }* Прикрепление прокрутки или фиксированное прикрепление.
Фон { Кисть | URL | Повторение | Выравнивание }* Последовательность кистей, URL, повторений и выравнивания.
Булево значение 0 | 1 Истина (1) или ложь (0).

Пример:

QDialog { etch-disabled-text: 1 }
Граница { Стиль границы | Длина | Кисть }* Сокращенное свойство границы.
Изображение границы none | URL Число{4} (stretch | repeat){0,2} Изображение границы — это изображение, состоящее из девяти частей (верхний левый, верхний центральный, верхний правый, центральный левый, центральный, центральный правый, нижний левый, нижний центральный и нижний правый). Когда требуется граница определенного размера, угловые части используются как есть, а верхние, правые, нижние и левые части растягиваются или повторяются для создания границы нужного размера.

Подробнее см. в спецификации черновика CSS3.

Стиль границы dashed | dot-dash | dot-dot-dash | dotted | double | groove | inset | outset | ridge | solid | none Определяет шаблон, используемый для рисования границы. Подробнее см. в спецификации черновика CSS3.
Цвета рамки Кисть{1,4} Одно или четыре вхождения кисти, определяющие верхнюю, правую, нижнюю и левую стороны рамки соответственно. Если левый цвет не указан, он принимается таким же, как и правый цвет. Если нижний цвет не указан, он принимается таким же, как и верхний цвет. Если правый цвет не указан, он принимается таким же, как и верхний цвет.

Пример:

QLabel { border-color: red }   /* red red red red */
QLabel { border-color: red blue } /* red blue red blue */
QLabel { border-color: red blue green } /* red blue green blue */
QLabel { border-color: red blue green yellow }
/* red blue green yellow */
Длины рамки Длина{1,4} Одно или четыре вхождения длины, определяющие верхнюю, правую, нижнюю и левую стороны рамки соответственно. Если левая длина не указана, она принимается такой же, как и правая длина. Если нижняя длина не указана, она принимается такой же, как и верхняя длина. Если правая длина не указана, она принимается такой же, как и верхняя длина.

Примеры:

QLabel { border-width: 1px }                    /* 1px 1px 1px 1px */
QLabel { border-width: 1px 2px }                /* 1px 2px 1px 2px */
QLabel { border-width: 1px 2px 3px }            /* 1px 2px 3px 2px */
QLabel { border-width: 1px 2px 3px 4px }        /* 1px 2px 3px 4px */
Кисть Цвет | Градиент | Роль палитры Определяет цвет, градиент или запись в палитре.
Цвет rgb(r, g, b) | rgba(r, g, b, a) | hsv(h, s, v) | hsva(h, s, v, a) | hsl(h, s, l) | hsla(h, s, l, a) | #rrggbb | Имя цвета Определяет цвет как RGB (красный, зеленый, синий), RGBA (красный, зеленый, синий, альфа), HSV (оттенок, насыщенность, значение), HSVA (оттенок, насыщенность, значение, альфа), HSL (оттенок, насыщенность, светлота), HSLA (оттенок, насыщенность, светлота, альфа) или имя цвета. Синтаксис rgb() или rgba() может использоваться с целыми значениями от 0 до 255 или с процентами. Значение s, v, l и a в hsv(), hsva() hsl() или hsla() должно быть в диапазоне от 0 до 255 или в процентах, значение h должно быть в диапазоне от 0 до 359. Поддержка HSL(A) доступна начиная с версии 5.13.

Примеры:

QLabel { border-color: red }                      /* opaque red */
QLabel { border-color: #FF0000 }                  /* opaque red */
QLabel { border-color: rgba(255, 0, 0, 75%) }     /* 75% opaque red */
QLabel { border-color: rgb(255, 0, 0) }           /* opaque red */
QLabel { border-color: rgb(100%, 0%, 0%) }        /* opaque red */
QLabel { border-color: hsv(60, 100%, 100%) }      /* opaque yellow */
QLabel { border-color: hsva(240, 255, 255, 75%) } /* 75% blue */
QLabel { border-color: hsl(60, 100%, 50%) }       /* opaque yellow */
QLabel { border-color: hsla(240, 255, 50%, 75%) } /* 75% blue */

Примечание: Разрешенные цвета RGB такие же, как и разрешенные в CSS 2.1, как указано здесь.

Шрифт (Стиль шрифта | Вес шрифта){0,2} Размер шрифта Строка Сокращенное свойство шрифта.
Размер шрифта Длина Размер шрифта.
Стиль шрифта normal | italic | oblique Стиль шрифта.
Вес шрифта normal | bold | 100 | 200 ... | 900 Вес шрифта.
Градиент qlineargradient | qradialgradient | qconicalgradient Определяет заливки градиентом. Существует три типа заливок градиентом:
  • Линейные градиенты интерполируют цвета между начальной и конечной точками.
  • Радиальные градиенты интерполируют цвета между фокальной точкой и конечными точками на окружности, ее окружающей.
  • Конические градиенты интерполируют цвета вокруг центральной точки.

Градиенты задаются в режиме привязки к объекту. Представьте себе прямоугольник, в котором отрисовывается градиент, у которого верхний левый угол находится в (0, 0), а нижний правый — в (1, 1). Параметры градиента затем задаются как проценты от 0 до 1. Эти значения экстраполируются в фактические координаты прямоугольника во время выполнения. Можно указать значения, которые лежат вне прямоугольника (-0,6 или 1,8, например).

Предупреждение: Остановки должны быть отсортированы в порядке возрастания.

Примеры:

/* linear gradient from white to green */
QTextEdit {
    background: qlineargradient(x1:0, y1:0, x2:1, y2:1,
                stop:0 white, stop: 0.4 gray, stop:1 green)
}

/* linear gradient from white to green */
QTextEdit {
    background: qlineargradient(x1:0, y1:0, x2:1, y2:1,
                stop:0 white, stop: 0.4 rgba(10, 20, 30, 40),
                stop:1 rgb(0, 200, 230, 200))
}

/* conical gradient from white to green */
QTextEdit {
    background: qconicalgradient(cx:0.5, cy:0.5, angle:30,
                stop:0 white, stop:1 #00FF00)
}

/* radial gradient from white to green */
QTextEdit {
    background: qradialgradient(cx:0, cy:0, radius: 1,
                fx:0.5, fy:0.5, stop:0 white, stop:1 green)
}
Иконка (URL (disabled | active | normal | selected)? (on | off)? )* Список URL, QIcon::Mode и QIcon::State.

Пример:

* {
    file-icon: url(file.png),
               url(file_selected.png) selected;
  }

QMessageBox {
    dialogbuttonbox-buttons-have-icons: true;
    dialog-ok-icon: url(ok.svg);
    dialog-cancel-icon: url(cancel.png),
                        url(grayed_cancel.png) disabled;
}
Длина Число (px | pt | em | ex)? Число, за которым следует единица измерения. Стандарт CSS рекомендует, чтобы агенты пользователя игнорировали объявление с некорректным значением. В Qt обязательно указывать единицы измерения. Для совместимости со старыми версиями Qt числа без единиц измерения в большинстве случаев интерпретируются как пиксели. Поддерживаемые единицы:
  • px: пиксели
  • pt: размер одного пункта (т.е. 1/72 дюйма)
  • em: ширина em шрифта (т.е. ширина символа 'M')
  • ex: высота x шрифта (т.е. высота символа 'x')

Однако, в Qt ограничены размеры шрифтов в pt и px, и любые другие размеры должны быть в px, em или ex.

Число Десятичное целое число или вещественное число Примеры: 0, 18, +127, -255, 12.34, -.5, 0009.
Происхождение margin | border | padding | content Указывает, какой из четырех прямоугольников использовать.
  • margin: Прямоугольник отступа. Отступ находится вне границы.
  • border: Прямоугольник границы. Здесь рисуется любая граница.
  • padding: Прямоугольник отступа. В отличие от отступов, отступ находится внутри границы.
  • content: Прямоугольник содержимого. Это определяет, где находится фактическое содержимое, исключая любые отступы, границы или отступы.

См. также Модель области.

Роль палитры alternate-base | base | bright-text | button | button-text | dark | highlight | highlighted-text | light | link | link-visited | mid | midlight | shadow | text | window | window-text Эти значения соответствуют ролям цвета в QPalette виджета.

Например,

QPushButton { color: palette(dark); }
Радиус Длина{1, 2} Одно или два вхождения длины. Если указана только одна длина, она используется как радиус четверти окружности, определяющей угол. Если указаны две длины, первая длина — горизонтальный радиус четверти эллипса, а вторая длина — вертикальный радиус.
Повторение repeat-x | repeat-y | repeat | no-repeat Значение, указывающее характер повторения.
  • repeat-x: Повторять по горизонтали.
  • repeat-y: Повторять по вертикали.
  • repeat: Повторять по горизонтали и вертикали.
  • no-repeat: Не повторять.
Url url(filename) filename — имя файла на локальном диске или хранящегося с помощью Системы ресурсов Qt. Установка изображения неявно задаёт ширину и высоту элемента.

Список псевдосостояний

Поддерживаются следующие псевдосостояния:

Псевдосостояние Описание
:active Это состояние устанавливается, когда виджет находится в активном окне.
:adjoins-item Это состояние устанавливается, когда ветвь ::branch виджета QTreeView находится рядом с элементом.
:alternate Это состояние устанавливается для каждой второй строки при отрисовке строк виджета QAbstractItemView, когда свойство QAbstractItemView::alternatingRowColors() установлено в значение true.
:bottom Элемент расположен внизу. Например, для QTabBar с вкладками, расположенными внизу.
:checked Элемент выбран. Например, состояние выбран для QAbstractButton.
:closable Элементы могут быть закрыты. Например, для QDockWidget включена функция QDockWidget::DockWidgetClosable.
:closed Элемент в закрытом состоянии. Например, неразвернутый элемент в QTreeView.
:default Элемент — по умолчанию. Например, по умолчанию QPushButton или действие по умолчанию в QMenu.
:disabled Элемент отключён.
:editable QComboBox редактируется.
:edit-focus Элемент имеет фокус редактирования (см. QStyle::State_HasEditFocus). Это состояние доступно только для расширенных приложений Qt.
:enabled Элемент включён.
:exclusive Элемент является частью группы элементов с исключением. Например, пункт меню в группе QActionGroup с исключением.
:first Элемент — первый (в списке). Например, первая вкладка в QTabBar.
:flat Элемент плоский. Например, плоская кнопка QPushButton.
:floatable Элементы могут быть перемещены. Например, для QDockWidget включена функция QDockWidget::DockWidgetFloatable.
:focus Элемент имеет фокус ввода.
:has-children Элемент имеет дочерние элементы. Например, элемент в QTreeView с дочерними элементами.
:has-siblings Элемент имеет соседние элементы. Например, элемент в QTreeView со смежными элементами.
:horizontal Элемент имеет горизонтальную ориентацию.
:hover Указатель мыши находится над элементом.
:indeterminate Элемент имеет неопределенное состояние. Например, QCheckBox или QRadioButton частично отмечен.
:last Элемент — последний (в списке). Например, последняя вкладка в QTabBar.
:left Элемент расположен слева. Например, для QTabBar с вкладками, расположенными слева.
:maximized Элемент максимизирован. Например, максимизированное окно QMdiSubWindow.
:middle Элемент находится посередине (в списке). Например, вкладка, не находящаяся в начале или конце, в QTabBar.
:minimized Элемент минимизирован. Например, минимизированное окно QMdiSubWindow.
:movable Элемент может быть перемещён. Например, для QDockWidget включена функция QDockWidget::DockWidgetMovable.
:no-frame Элемент без рамки. Например, безрамочный QSpinBox или QLineEdit.
:non-exclusive Элемент входит в группу элементов без исключения. Например, пункт меню в группе QActionGroup без исключения.
:off Для элементов, которые могут быть переключены, это относится к элементам в состоянии «выкл.».
:on Для элементов, которые могут быть переключены, это относится к виджетам в состоянии «вкл.».
:only-one Элемент — единственный (в списке). Например, единственная вкладка в QTabBar.
:open Элемент открыт. Например, развернутый элемент в QTreeView, или QComboBox или QPushButton с открытым меню.
:next-selected Следующий элемент (в списке) выбран. Например, вкладка QTabBar, расположенная рядом с выбранной вкладкой.
:pressed Элемент нажат мышью.
:previous-selected Предыдущий элемент (в списке) выбран. Например, вкладка в QTabBar, расположенная рядом с выбранной.
:read-only Элемент помечен как только для чтения или нередактируемый. Например, QLineEdit только для чтения или QComboBox, нередактируемый.
:right Элемент расположен справа. Например, для QTabBar с вкладками, расположенными справа.
:selected Элемент выбран. Например, выбранная вкладка в QTabBar или выбранный элемент в QMenu.
:top Элемент расположен сверху. Например, для QTabBar с вкладками, расположенными сверху.
:unchecked Элемент не выбран.
:vertical Элемент имеет вертикальную ориентацию.
:window Виджет является окном (т.е. виджет верхнего уровня).

Список подконтролей

Доступны следующие подконтроли:

Подэлемент управления Описание
::add-line Кнопка для добавления строки в QScrollBar.
::add-page Область между ползунком и элементом «добавить строку» в QScrollBar.
::branch Индикатор ветви в QTreeView.
::chunk Блок прогресса в QProgressBar.
::close-button Кнопка закрытия QDockWidget или вкладки QTabBar.
::corner Угол между двумя полосами прокрутки в QAbstractScrollArea.
::down-arrow Стрелка вниз в QComboBox, QHeaderView (индикатор сортировки), QScrollBar или QSpinBox.
::down-button Кнопка вниз в QScrollBar или QSpinBox.
::drop-down Кнопка раскрывающегося списка в QComboBox.
::float-button Плавающая кнопка QDockWidget.
::groove Паз QSlider.
::indicator Индикатор в QAbstractItemView, QCheckBox, QRadioButton, переключаемом элементе QMenu или переключаемом QGroupBox.
::handle Ползунок (QScrollBar), QSplitter или QSlider.
::icon Значок в QAbstractItemView или QMenu.
::item Элемент в QAbstractItemView, QMenuBar, QMenu или QStatusBar.
::left-arrow Стрелка влево в QScrollBar.
::left-corner Левый угол QTabWidget. Например, этот элемент управления используется для управления позицией виджета в левом углу QTabWidget.
::menu-arrow Стрелка в меню в QToolButton.
::menu-button Кнопка меню в QToolButton.
::menu-indicator Индикатор меню в QPushButton.
::right-arrow Стрелка вправо в QMenu или QScrollBar.
::pane Панель (QTabWidget)
::right-corner Правый угол QTabWidget. Например, этот элемент управления используется для управления позицией виджета в правом углу QTabWidget.
::scroller Прокрутка в QMenu или QTabBar.
::section Раздел QHeaderView.
::separator Разделитель в QMenu или QMainWindow.
::sub-line Кнопка для вычитания строки в QScrollBar.
::sub-page Область между ползунком и элементом «вычесть строку» в QScrollBar.
::tab Вкладка QTabBar или QToolBox.
::tab-bar Панель вкладок QTabWidget. Этот подэлемент управления существует только для управления позицией QTabBar внутри QTabWidget. Для стилизации вкладок используйте подэлемент управления ::tab.
::tear Индикатор разрыва в QTabBar.
::tearoff Индикатор отделения в QMenu.
::text Текст в QAbstractItemView.
::title Заголовок QGroupBox или QDockWidget.
::up-arrow Стрелка вверх в QHeaderView (индикатор сортировки), QScrollBar или QSpinBox.
::up-button Кнопка вверх в QSpinBox.

См. Настройка подэлемента индикатора меню QPushButton для примера настройки подэлемента.

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

Spec-Zone.ru

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