Тип 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 : Компонент
Это свойство содержит делегат элемента, который визуализирует каждый день.
Помимо свойства 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 использует нумерацию месяцев, начинающуюся с 0, для согласованности с типом 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.12/qml-qt-labs-calendar-monthgrid.html