Тип QML MonthGrid
Сетка дней для месяца календаря. Подробнее...
| Заявление об импорте: | 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.
Примечание: Соответствующий обработчик — onClicked.
pressAndHold(дата date)
Этот сигнал отправляется при удержании нажатой кнопки на date.
Примечание: Соответствующий обработчик — onPressAndHold.
pressed(дата date)
Этот сигнал отправляется при нажатии на date.
Примечание: Соответствующий обработчик — onPressed.
released(дата date)
Этот сигнал отправляется при отпускании нажатой кнопки на date.
Примечание: Соответствующий обработчик — onReleased.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qt-labs-calendar-monthgrid.html