Spec-Zone.ru › Qt 5.13

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

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

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

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

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

Все производные от QAbstractScrollArea, включая QTextEdit и QAbstractItemView (все классы представления элементов), поддерживают прокручиваемые фоны с помощью свойства background-attachment. Установка background-attachment в значение fixed обеспечивает фоновую картинку, которая не прокручивается вместе с областью просмотра. Установка 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.

Для элементов с подменю знаки стрелок стилизуются с помощью right-arrow и left-arrow.

Провайдер стилизуется с помощью ::scroller.

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

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

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

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

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

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

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

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

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

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

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

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

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 стилизуется с помощью свойства alignment.

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

Для изменения положения 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 рисует нативный border, который полностью перекрывает 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 рисует нативный border, который полностью перекрывает 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 Style Sheets. Какие значения можно присвоить свойству, зависит от типа свойства. Если не указано иное, свойства ниже применяются ко всем виджетам. Свойства, помеченные звездочкой *, являются специфическими для Qt и не имеют эквивалента в CSS2 или CSS3.

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

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

Пример:

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

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

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, цвет выделенного фона, background-clip, background-attachment и цвет фона поочередных строк.

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

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

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-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-width и Модель области.

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-color, border-style, border-image и Модель области.

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-color, border-radius, border-style, border-image, и Модель области.

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

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

Пример:

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

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

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 }

См. также фон и selection-color.

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-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 как число Unicode.

Если это свойство не указано, оно по умолчанию имеет значение, заданное текущим стилем для стилевого подсказки 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
радиус-контура Добавляет скругленные углы к контуру
радиус-контура-внизу-слева Радиус Радиус скругленного нижнего левого угла контура.
радиус-контура-внизу-справа Радиус Радиус скругленного нижнего правого угла контура.
радиус-контура-вверху-слева Радиус Радиус скругленного верхнего левого угла контура.
outline-top-right-radius Радиус Радиус для закругления правого верхнего угла контура.
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 }

См. также отступ, интервал и Модель рамки.

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 и отображают выделенный текст.

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

Пример:

QTextEdit { selection-background-color: darkblue }

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

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

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

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

Пример:

QTextEdit { selection-color: white }

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

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

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

Пример:

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

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

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

Пример:

QMenuBar { spacing: 10 }

См. также padding и отступ.

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

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

Пример:

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

См. также положение-подэлемента.

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 }

См. также высота.

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

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

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

Имя QStyle::StandardPixmap
иконка-назад QStyle::SP_ArrowBack
иконка-компакт-диска 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_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: ширина ex шрифта (т. е. высота '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 Элемент выбран. Например, состояние checked у QAbstractButton.
:closable Элементы могут быть закрыты. Например, QDockWidget имеет включенную функцию QDockWidget::DockWidgetClosable.
:closed Элемент находится в закрытом состоянии. Например, нерасширенный элемент в QTreeView.
:default Элемент является стандартным. Например, default QPushButton или стандартное действие в QMenu.
:disabled Элемент отключен.
:editable QComboBox редактируется.
:edit-focus Элемент имеет фокус редактирования (см. QStyle::State_HasEditFocus). Это состояние доступно только для приложений Qt Extended.
:enabled Элемент включён.
:exclusive Элемент является частью группы элементов с исключительным выбором. Например, элемент меню в QActionGroup с исключительным выбором.
:first Элемент является первым (в списке). Например, первая вкладка в QTabBar.
:flat Элемент плоский. Например, 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-5.13/stylesheet-reference.html

Spec-Zone.ru

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