Spec-Zone.ru › Qt 5.15

Тип QML MonthGrid

Сетка дней для месяца календаря. Подробнее...

Заявление об импорте: import Qt.labs.calendar 1.0
Наследует:

Control

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

Свойства

  • delegate : Компонент
  • month : int
  • title : строка
  • year : int

Сигналы

  • 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

Spec-Zone.ru

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