Тип MonthGrid QML
Сетка дней для календарного месяца. Подробнее...
| Заявление об импорте: | import Qt.labs.calendar 1.0 |
| Наследует: |
Свойства
Сигналы
- clicked(date)
- pressAndHold(date)
- pressed(date)
- released(date)
Подробное описание
MonthGrid отображает календарный месяц в виде сетки. Содержимое рассчитывается для заданного месяца и года, используя указанный языковой стандарт.
MonthGrid {
month: Calendar.December
year: 2015
locale: Qt.locale("en_US")
} MonthGrid может использоваться как самостоятельный элемент управления, но чаще всего используется совместно с DayOfWeekRow и WeekNumberColumn. Независимо от варианта использования, позиционирование сетки остается на усмотрение пользователя.
GridLayout {
columns: 2
DayOfWeekRow {
locale: grid.locale
Layout.column: 1
Layout.fillWidth: true
}
WeekNumberColumn {
month: grid.month
year: grid.year
locale: grid.locale
Layout.fillHeight: true
}
MonthGrid {
id: grid
month: Calendar.December
year: 2015
locale: Qt.locale("en_US")
Layout.fillWidth: true
Layout.fillHeight: true
}
} Внешний вид MonthGrid можно изменить, реализовав пользовательский делегат.
Примечание: Типы в модулях Qt.labs не гарантируют сохранение совместимости в будущих версиях.
См. также DayOfWeekRow, WeekNumberColumn и CalendarModel.
Документация по свойствам
delegate : Component
Это свойство содержит делегат элементов, который визуализирует каждый день.
В дополнение к свойству index, в контексте каждого делегата доступен список ролей данных модели:
| model.date : дата | Дата ячейки |
| model.day : int | Номер дня |
| model.today : bool | Является ли делегат текущей датой |
| model.weekNumber : int | Номер недели |
| model.month : int | Номер месяца |
| model.year : int | Номер года |
Следующий фрагмент кода представляет собой стандартную реализацию делегата элемента. Он может быть использован в качестве отправной точки для реализации пользовательских делегатов.
delegate: Text {
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
opacity: model.month === control.month ? 1 : 0
text: model.day
font: control.font
} month : int
Это свойство содержит номер месяца. Значение по умолчанию — текущий месяц.
Модуль Qt Labs Calendar использует нумерацию месяцев с нуля, что соответствует типу JavaScript Date, используемому в языке QML. Это означает, что Date::getMonth() может быть присвоено этому свойству как есть. При работе непосредственно с номерами месяцев настоятельно рекомендуется использовать следующие значения перечисления для избежания путаницы.
| Константа | Описание |
|---|---|
Calendar.January |
Январь (0) |
Calendar.February |
Февраль (1) |
Calendar.March |
Март (2) |
Calendar.April |
Апрель (3) |
Calendar.May |
Май (4) |
Calendar.June |
Июнь (5) |
Calendar.July |
Июль (6) |
Calendar.August |
Август (7) |
Calendar.September |
Сентябрь (8) |
Calendar.October |
Октябрь (9) |
Calendar.November |
Ноябрь (10) |
Calendar.December |
Декабрь (11) |
См. также Calendar.
title : строка
Это свойство содержит заголовок календаря.
Это свойство предоставлено для удобства. MonthGrid сам по себе не визуализирует заголовок. Значение по умолчанию состоит из имени месяца, отформатированного с использованием языкового стандарта, и номера года.
year : int
Это свойство содержит номер года.
Значение должно находиться в диапазоне от -271820 до 275759. Значение по умолчанию — текущий год.
Документация по сигналам
clicked(date)
Этот сигнал генерируется при нажатии на date.
pressAndHold(date)
Этот сигнал генерируется при удерживании нажатой кнопки на date.
pressed(date)
Этот сигнал генерируется при нажатии на date.
released(date)
Этот сигнал генерируется при отпускании кнопки на date.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qml-qt-labs-calendar-monthgrid.html