Тип 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 использует нумерацию месяцев, начиная с 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) |
См. также Календарь.
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/archives/qt-5.11/qml-qt-labs-calendar-monthgrid.html