Spec-Zone.ru › Qt 5.11

Тип QML Control

Абстрактный базовый тип, предоставляющий функциональность, общую для всех элементов управления. Подробнее...

Оператор импорта: import QtQuick.Controls 2.4
С тех пор: Qt 5.7
Наследует:

Item

Наследуется:

AbstractButton, BusyIndicator, ComboBox, Container, Dial, MenuSeparator, Page, PageIndicator, Pane, ProgressBar, RangeSlider, ScrollBar, ScrollIndicator, ScrollView, Slider, SpinBox, StackView, ToolSeparator и Tumbler

  • Список всех членов, включая унаследованные

Свойства

  • availableHeight : real
  • availableWidth : real
  • background : Item
  • bottomPadding : real
  • contentItem : Item
  • focusPolicy : перечисление
  • focusReason : перечисление
  • font : шрифт
  • hoverEnabled : bool
  • hovered : bool
  • leftPadding : real
  • locale : Locale
  • mirrored : bool
  • padding : real
  • palette : палитра
  • rightPadding : real
  • spacing : real
  • topPadding : real
  • visualFocus : bool
  • wheelEnabled : bool

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

Control — это базовый тип элементов управления пользовательским интерфейсом. Он получает события ввода от системного окна и рисует свое представление на экране.

Макет элемента управления

Следующая диаграмма иллюстрирует макет типичного элемента управления:

Значения implicitWidth и implicitHeight элемента управления обычно основаны на неявных размерах фона и элемента содержимого плюс любой отступ. Эти свойства определяют, насколько большим будет элемент управления, когда не указаны явные ширина или высота.

Элемент background заполняет всю ширину и высоту элемента управления, если для него не указан явный размер.

Геометрия элемента contentItem определяется отступами.

Обработка событий

Все элементы управления, кроме неинтерактивных индикаторов, не пропускают щелчки и прикосновения к элементам под ними. Например, если Pane используется в качестве шапки или подвала ApplicationWindow, элементы под ним не получат события мыши или касания.

См. также ApplicationWindow и Container.

Документация по свойствам

[только для чтения] availableHeight : real

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

См. также Макет элемента управления, padding, topPadding и bottomPadding.

[только для чтения] availableWidth : real

Это свойство содержит ширину, доступную для contentItem, после вычитания горизонтального отступа из ширины элемента управления.

См. также Макет элемента управления, padding, leftPadding и rightPadding.

background : Item

Это свойство содержит элемент фона.

Button {
    id: control
    text: qsTr("Button")
    background: Rectangle {
        implicitWidth: 100
        implicitHeight: 40
        opacity: enabled ? 1 : 0.3
        color: control.down ? "#d0d0d0" : "#e0e0e0"
    }
}

Примечание: Если элемент фона не имеет явных размеров, он автоматически принимает размеры элемента управления. В большинстве случаев нет необходимости указывать ширину или высоту для элемента фона.

Примечание: Большинство элементов управления используют неявный размер элемента фона для вычисления неявного размера самого элемента управления. Если вы замените элемент фона пользовательским, вы также должны рассмотреть предоставление разумного неявного размера для него (если это не элемент, как Image, который имеет свой неявный размер).

См. также Макет элемента управления.

bottomPadding : real

Это свойство содержит нижний отступ.

См. также Макет элемента управления, padding, topPadding и availableHeight.

contentItem : Item

Это свойство содержит визуальный элемент содержимого.

Button {
    id: control
    text: qsTr("Button")
    contentItem: Label {
        text: control.text
        font: control.font
        verticalAlignment: Text.AlignVCenter
    }
}

Примечание: Элемент содержимого автоматически масштабируется для размещения внутри отступа элемента управления.

Примечание: Большинство элементов управления используют неявный размер элемента содержимого для вычисления неявного размера самого элемента управления. Если вы замените элемент содержимого пользовательским, вы также должны рассмотреть предоставление разумного неявного размера для него (если это не элемент, как Text, который имеет свой неявный размер).

См. также Макет элемента управления и padding.

focusPolicy : перечисление

Это свойство определяет способ получения фокуса элементом управления.

Постоянная Описание
Qt.TabFocus Элемент управления получает фокус при нажатии клавиши Tab.
Qt.ClickFocus Элемент управления получает фокус при щелчке.
Qt.StrongFocus Элемент управления получает фокус при нажатии клавиши Tab и щелчке.
Qt.WheelFocus Элемент управления получает фокус при нажатии клавиши Tab, щелчке и использовании колеса мыши.
Qt.NoFocus Элемент управления не получает фокус.

[только для чтения] focusReason : перечисление

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

Примечание: Это свойство не указывает, имеет ли элемент управления активный фокус, а причину, по которой элемент управления либо получил, либо потерял фокус.

Постоянная Описание
Qt.MouseFocusReason Произошло действие мыши.
Qt.TabFocusReason Нажата клавиша Tab.
Qt.BacktabFocusReason Произошло событие Backtab. Ввод для этого может включать клавиши Shift или Ctrl; например, Shift+Tab.
Qt.ActiveWindowFocusReason Система окон сделала это окно активным или неактивным.
Qt.PopupFocusReason Приложение открыло/закрыло всплывающее окно, которое захватило/освободило фокус клавиатуры.
Qt.ShortcutFocusReason Пользователь ввел сокращение метки.
Qt.MenuBarFocusReason Панель меню получила фокус.
Qt.OtherFocusReason Другая причина, обычно специфичная для приложения.

См. также Item::activeFocus и visualFocus.

font : font

Это свойство содержит шрифт, текущий для элемента управления.

Это свойство описывает запрашиваемый шрифт элемента управления. Шрифт используется стилем элемента управления при отрисовке стандартных компонентов и позволяет обеспечить согласованность пользовательского интерфейса с родной платформой. На разных платформах или с разными стилями могут использоваться разные шрифты приложения.

Шрифт по умолчанию зависит от системной среды. ApplicationWindow сохраняет системный/темовый шрифт, который используется по умолчанию для всех элементов управления. Также могут быть специальные шрифты по умолчанию для определенных типов элементов управления. Вы можете установить шрифт по умолчанию для элементов управления, выполнив:

  • передавая пользовательский шрифт в QGuiApplication::setFont() перед загрузкой QML; или
  • указывающий шрифты в файле qtquickcontrols2.conf.

В конечном итоге шрифт сопоставляется с базой данных шрифтов Qt для поиска наилучшего соответствия.

Элемент управления распространяет явные свойства шрифта от родительского к дочерним элементам. Если вы измените определенное свойство шрифта элемента управления, это свойство передаётся всем дочерним элементам, переопределяя любые системные значения по умолчанию для этого свойства.

Page {
    font.family: "Courier"

    Column {
        Label {
            text: qsTr("This will use Courier...")
        }

        Switch {
            text: qsTr("... and so will this")
        }
    }
}

Полный список доступных свойств шрифта см. в документации по типу QML шрифт.

hoverEnabled : bool

Это свойство определяет, принимает ли элемент управления события наведения. Значение по умолчанию равно Qt.styleHints.useHoverEffects.

Установление этого свойства распространяет значение на все дочерние элементы управления, у которых явно не установлено hoverEnabled.

Вы также можете включить или отключить эффекты наведения для всех приложений Qt Quick Controls 2, установив QT_QUICK_CONTROLS_HOVER_ENABLED переменную окружения.

См. также hovered.

[только для чтения] hovered : bool

Это свойство указывает, находится ли элемент управления под курсором.

См. также hoverEnabled.

leftPadding : real

Это свойство содержит отступ слева.

См. также Макет элемента управления, padding, rightPadding и availableWidth.

locale : Locale

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

Она содержит специфичные для локали свойства для форматирования данных и чисел. Если не установлена специальная локаль, это локаль родителя или локаль по умолчанию.

Элемент управления наследует локаль от родителя дочерним элементам. Если вы измените локаль элемента управления, эта локаль передаётся всем дочерним элементам, переопределяя системную локаль по умолчанию.

См. также mirrored и LayoutMirroring.

[только для чтения] mirrored : bool

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

Это свойство предоставлено для удобства. Элемент управления считается зеркально отображенным, если направление визуального макета — справа налево; то есть, если используется локаль справа налево или когда LayoutMirroring.enabled равно true.

См. также locale, LayoutMirroring и Пользовательские интерфейсы справа налево.

padding : real

Это свойство содержит отступ по умолчанию.

Отступ добавляет пространство между каждым краем элемента содержимого и элементом фона, эффективно управляя размером элемента содержимого. Чтобы указать значение отступа для определённого края элемента управления, установите соответствующее свойство:

  • leftPadding
  • rightPadding
  • topPadding
  • bottomPadding

Примечание: Разные стили могут задавать отступ по умолчанию для определённых элементов управления по-разному, и эти способы могут меняться со временем по мере изменения руководящих принципов дизайна, на которых основан стиль. Чтобы гарантировать, что эти изменения не повлияют на заданные вами значения отступов, лучше всего использовать максимально специфичные доступные свойства. Например, вместо задания свойства отступа:

padding: 0

установите каждое конкретное свойство вместо этого:

leftPadding: 0
rightPadding: 0
topPadding: 0
bottomPadding: 0

См. также Макет элемента управления, availableWidth, availableHeight, topPadding, leftPadding, rightPadding и bottomPadding.

palette : palette

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

Это свойство описывает запрошенную палитру элемента управления. Палитра используется стилем элемента управления при отрисовке стандартных компонентов, и позволяет обеспечить согласованность пользовательского интерфейса с родной платформой. На разных платформах или с разными стилями могут использоваться разные палитры приложения.

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

  • передавая пользовательскую палитру в QGuiApplication::setPalette() перед загрузкой QML; или
  • указывающий цвета в файле qtquickcontrols2.conf.

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

Page {
    palette.text: "red"

    Column {
        Label {
            text: qsTr("This will use red color...")
        }

        Switch {
            text: qsTr("... and so will this")
        }
    }
}

Полный список доступных цветов палитры см. в документации по типу QML палитра.

Это свойство было введено в QtQuick.Controls 2.3 (Qt 5.10).

См. также ApplicationWindow::palette и Popup::palette.

rightPadding : real

Это свойство содержит отступ справа.

См. также Макет элемента управления, padding, leftPadding и availableWidth.

spacing : real

Это свойство содержит интервал.

Интервал полезен для элементов управления, которые имеют несколько или повторяющиеся составные части. Например, некоторые стили используют интервал для определения расстояния между текстом и индикатором CheckBox. Интервал не навязывается элементом управления, поэтому каждый стиль может интерпретировать его по-разному, и некоторые могут его вообще игнорировать.

topPadding : real

Это свойство содержит отступ сверху.

См. также Макет элемента управления, padding, bottomPadding и availableHeight.

[только для чтения] visualFocus : bool

Это свойство содержит значение, указывая, имеет ли элемент управления визуальный фокус. Это свойство равно true когда элемент управления имеет активный фокус, и причина фокусировки — Qt.TabFocusReason, Qt.BacktabFocusReason, или Qt.ShortcutFocusReason.

В общем случае для визуализации ключевого фокуса это свойство предпочтительнее, чем Item::activeFocus. Это гарантирует, что ключевой фокус визуализируется только при взаимодействии с клавишами, а не при взаимодействии с помощью сенсорного экрана или мыши.

См. также focusReason и Item::activeFocus.

wheelEnabled : bool

Это свойство определяет, обрабатывает ли элемент события прокрутки колесом. Значение по умолчанию равно false.

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

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qml-qtquick-controls2-control.html

Spec-Zone.ru

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