MonthGrid QML Type
Una cuadrícula de días para un mes natural. Más...
| Import Statement: | import QtQuick.Controls |
| Inherits: |
Propiedades
Señales
- clicked(date date)
- pressAndHold(date date)
- pressed(date date)
- released(date date)
Descripción detallada
MonthGrid presenta un mes de calendario en una cuadrícula. El contenido se calcula para un month y un year dados, utilizando el locale especificado.

MonthGrid { month: Calendar.December year: 2015 locale: Qt.locale("en_US") }
MonthGrid puede utilizarse como control independiente, pero se suele utilizar junto con DayOfWeekRow y WeekNumberColumn. Independientemente del caso de uso, el posicionamiento de la cuadrícula se deja en manos del usuario.

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 } }
El aspecto visual de MonthGrid puede modificarse mediante la implementación de custom delegate.
Cuando se visualiza cualquier mes, MonthGrid muestra los días del mes anterior y del siguiente. Esto significa que siempre muestra seis filas, incluso cuando la primera o la última fila están completamente dentro de un mes adyacente.
Localización de días
Para localizar días, utilice Locale.toString(). Por ejemplo, para mostrar los números de los días en una configuración regional árabe:
MonthGrid { id: monthGrid month: Calendar.December year: 2015 locale: Qt.locale("ar") delegate: Text { horizontalAlignment: Text.AlignHCenter verticalAlignment: Text.AlignVCenter opacity: model.month === monthGrid.month ? 1 : 0 text: monthGrid.locale.toString(model.date, "d") font: monthGrid.font required property var model } }
Véase también DayOfWeekRow, WeekNumberColumn, CalendarModel, y Qt Quick Controls - Calendario de eventos.
Documentación de propiedades
delegate : Component
Esta propiedad contiene el elemento delegado que visualiza cada día.
Además de la propiedad index, en el contexto de cada delegado hay disponible una lista de roles de datos del modelo:
| model.date: fecha | La fecha de la celda |
| model.day: int | El número del día |
| model.today: bool | Si el delegado representa el día de hoy |
| model.weekNumber: int | El número de la semana |
| model.mes: int | El número del mes |
| modelo.año: int | El número del año |
El siguiente fragmento presenta la implementación por defecto del delegado de elemento. Puede utilizarse como punto de partida para implementar delegados personalizados.
MonthGrid no se apropia del delegado.
delegate: Text { horizontalAlignment: Text.AlignHCenter verticalAlignment: Text.AlignVCenter opacity: model.month === control.month ? 1 : 0 text: model.day font: control.font color: control.palette.text required property var model }
month : int
Esta propiedad contiene el número del mes. El valor por defecto es el mes actual.
Los tipos relacionados con el calendario en Qt Quick Controls utilizan números de mes basados en 0, como los objetos Date de JavaScript. Sin embargo, esto difiere de QDate, donde los meses se numeran empezando por 1.
Para evitar confusiones, puede utilizar los siguientes valores de enumeración:
| Constante | Descripción |
|---|---|
Calendar.January | Enero (0) |
Calendar.February | Febrero (1) |
Calendar.March | Marzo (2) |
Calendar.April | Abril (3) |
Calendar.May | Mayo (4) |
Calendar.June | Junio (5) |
Calendar.July | Julio (6) |
Calendar.August | Agosto (7) |
Calendar.September | septiembre (8) |
Calendar.October | octubre (9) |
Calendar.November | noviembre (10) |
Calendar.December | Diciembre (11) |
Ver también Calendar.
title : string
Esta propiedad contiene un título para el calendario.
Esta propiedad se proporciona por comodidad. MonthGrid no visualiza por sí misma el título. El valor por defecto consiste en el nombre del mes, formateado usando locale, y el número del año.
year : int
Esta propiedad contiene el número del año.
El valor debe estar comprendido entre -271820 y 275759. El valor por defecto es el año en curso.
Documentación de la señal
clicked(date date)
Esta señal se emite cuando se hace clic en date.
Nota: El controlador correspondiente es onClicked.
pressAndHold(date date)
Esta señal se emite cuando se mantiene pulsado date.
Nota: El manejador correspondiente es onPressAndHold.
pressed(date date)
Esta señal se emite cuando se pulsa date.
Nota: El manejador correspondiente es onPressed.
released(date date)
Esta señal se emite cuando se libera date.
Nota: El manejador correspondiente es onReleased.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.