VDateTimeEditBrowser
Hereda de: VAbstractBrowser.
Esta clase representa al control de edición de fecha/hora con doble botón arriba/abajo y botón de menú.
Esta clase implementa la misma funcionalidad que la clase VDateTmeEdit más las propiedades y funciones heredadas de la clase VAbstractBrowser.
Indice de propiedades
Boolean accelerated
const Boolean acceptableInput
Number alignment
Number buttonSymbols
Boolean calendarPopup
Number correctionMode
Number currentSection
Number currentSectionIndex
Date date
DateTime dateTime
const Number displayedSections
String displayFormat
Boolean frame
Boolean keyboardTracking
Date maximumDate
DateTime maximumDateTime
Time maximumTime
Date minimumDate
DateTime minimumDateTime
Time minimumTime
Boolean readOnly
const Number sectionCount
String specialValueText
const String text
Time time
Number timeSpec
Boolean wrapping
Indice de funciones
Generales
void clear()
void selectAll()
void stepDown()
void stepUp()
De set
void setCalendarStyle(String colorFondo, String colorTexto, String DíasSemana, String CadenaDiaMeses, Array fechas)
void setDate( Date date )
void setDateTime( DateTime datetime )
void setTime( Time time )
Señales
Value changed
Enumeraciones
Button symbols
UpDownArrows
PlusMinus
NoButtons
Correction mode
CorrectToPreviousValue
CorrectToNearestValue
Flags de alineamiento
AlignLeft = 0×0001
AlignRight = 0×0002
AlignHCenter = 0×0004
AlignJustify = 0×0008
AlignAbsolute = 0×0010
AlignTop = 0×0020
AlignBottom = 0×0040
AlignVCenter = 0×0080
AlignCenter = AlignVCenter | AlignHCenter
Flags de sección
NoSection = 0x0000
AmPmSection = 0x0001
MSecSection = 0x0002
SecondSection = 0x0004
MinuteSection = 0x0008
HourSection = 0x0010
DaySection = 0x0100
MonthSection = 0x0200
YearSection = 0x0400
TimeSpec
LocalTime = 0
UTC = 1
OffsetFromUTC = 2
Documentación de propiedades
accelerated
Permite leer o configurar si está activada la aceleración en caso de mantener pulsados los botones arriba/abajo del microscroller.
acceptableInput
Devuelve true si la entrada cumple la validación actual del control.
alignment
Permite leer o configurar la alineación del contenido. Ver enum de Flags de alineamiento. Los valores con combinables mediante el uso del operador bitwise or booleano "|".
buttonSymbols
Permite leer o configurar los símbolos a utilizar en los botones arriba/abajo del microscroller, por ejemplo (+/- ó flecha arriba/flecha abajo).
calendarPopup
Permite leer o configurar el modo en el que se mostrará el calendario pop-up. El calendario pop-up aparecerá al hacer clic en el botón de flecha. Esta propiedad sólo es válida si hay un formato de visualización de fecha válida.
correctionMode
Permite leer o configurar si se aplicará corrección si existe un valor intermedio editado en el control.
currentSection
Permite leer o configurar la sección actual del microscroller setCurrentSection(). Ver enum de flags de sección. Los valores con combinables mediante el uso del operador bitwise or booleano "|".
currentSectionIndex
Permite leer o configurar el índice de la sección actual del microscroller. Si el formato es "aaaa/MM/dd ', el displayText es '2001/05/21' y la posición del cursor es de 5 currentSectionIndex devuelve 1. Si la posición del cursor es 3 currentSectionIndex es 0, etc.
date
Permite leer o configurar la fecha del widget. De forma predeterminada, esta propiedad contiene una fecha que se refiere al 1 de enero de 2000.
dateTime
Permite leer o configurar la fecha y hora editada en el widget. Al establecer esta propiedad la timespec del QDateTimeEdit sigue siendo el mismo y la timespec del QDateTime nuevo se ignora. De forma predeterminada, esta propiedad contiene una fecha que se refiere al 1 de enero de 2000 y un tiempo de 00:00:00 y 0 milisegundos.
displayedSections
Permite leer los campos mostrados actualmente de la edición Fecha y Hora. Devuelve un conjunto de bits de las secciones que se muestran. Ver enum de flags de sección. Los valores con combinables mediante el uso del operador bitwise or booleano "|".
displayFormat
Permite leer o configurar el formato utilizado para mostrar la fecha y la hora. Este formato es el mismo que el utilizado se describe en DateTime.toString() y DateTime.FromString()
Ejemplo de formato de cadenas (asumiendo que la fecha es 02 de julio 1969):
Formato de resultados
dd.mm.aaaa - 02.07.1969
MMM d aa - 02 de julio 69
MMMM d yy - 02 de julio 69
Tenga en cuenta que si especifica un año de dos dígitos, se interpreta que en el siglo en el que la edición de fecha y hora se ha inicializado. El valor predeterminado es el siglo 21 (2000-2099). Si se especifica un formato no válido el formato no se establecerá.
frame
Permite leer o configurar si el control será pintado con o sin frame.
keyboardTracking
Permite leer o configurar si el seguimiento de teclado está habilitado para el control. Si el seguimiento de teclado está activado (por defecto), el cuadro de número valueChanged emite la señal (), mientras que el nuevo valor se introduce desde el teclado. Por ejemplo cuando el usuario introduce el valor 600, escribiendo 6, 0, y 0, el cuadro de número 3 emite señales con los valores de 6, 60, y 600, respectivamente. Si el seguimiento de teclado está desactivado, el cuadro de número no emite la señal valueChanged () mientras se escribe. Emite la señal después, cuando la tecla es presionada, cuando el foco del teclado se pierde, o cuando la funcionalidad spinbox otro se utiliza por ejemplo, presionando una tecla de flecha.
maximumDate
Permite leer o configurar la fecha máxima editable. Al establecer esta propiedad la minimumDate se ajusta si es necesario para asegurar que el rango sigue siendo válido. Si la fecha no es válida esta función no hace nada. De forma predeterminada, esta propiedad contiene una fecha que hace referencia al 31 de diciembre de 7999.
maximumDateTime
Permite leer o configurar fecha y hora máximas editables. Al establecer esta propiedad la minimumDateTime() se ajusta si es necesario para asegurar que el rango sigue siendo válido. Si la fecha y hora no son válidos esta función no hace nada. El maximumDateTime por defecto puede restaurarse con clearMaximumDateTime(). De forma predeterminada, esta propiedad contiene una fecha que hace referencia a 31 de diciembre de 7999 y un tiempo de 23:59:59 y 999 milisegundos.
maximumTime
Permite leer o configurar la hora máxima editable. Al establecer esta propiedad, el minimumTime se ajusta si es necesario para asegurar que el rango sigue siendo válido. Si la hora no es válida, esta función no hace nada. De forma predeterminada, esta propiedad posee un tiempo de 23:59:59 y 999 milisegundos.
minimumDate
Permite leer o configurar la fecha mínima editable. Al establecer esta propiedad la maximumDate se ajusta si es necesario, para asegurar que el rango sigue siendo válido. Si la fecha no es válida esta función no hace nada. De forma predeterminada, esta propiedad contiene una fecha que se refiere al 14 de septiembre de 1752. La fecha mínima debe ser de al menos el primer día en el año 100.
minimumDateTime
Permite leer o configurar la fecha y hora mínima editable. Al establecer esta propiedad la maximumDateTime() se ajusta si es necesario para asegurar que el rango sigue siendo válido. Si la fecha y hora no son válidos esta función no hace nada. El minimumDateTime por defecto puede restaurarse con clearMinimumDateTime(). De forma predeterminada, esta propiedad contiene una fecha que se refiere al 14 de septiembre 1752 y un tiempo de 00:00:00 y 0 milisegundos.
minimumTime
Permite leer o configurar la hora mínima editable. Al establecer esta propiedad la maximumTime se ajusta si es necesario, para asegurar que el rango sigue siendo válido. Si la hora no es válida, esta función no hace nada. De forma predeterminada, esta propiedad posee un tiempo de 00:00:00 y 0 milisegundos.
readOnly
Permite leer o configurar si el control es de sólo lectura.
sectionCount
Devuelve el número de secciones que se muestran. Si el formato es "aaaa/aa/aaaa ', sectionCount devuelve 3.
specialValueText
Permite leer o configurar si contiene el texto especial valor. Si se establece, el cuadro de selección mostrará este texto en lugar de un valor numérico siempre que el valor actual es igual al mínimo (). El uso típico es para indicar que esta elección tiene una especial (por defecto) que significa.
Por ejemplo, si su cuadro de selección permite al usuario elegir un factor de escala (o nivel de zoom) para la visualización de una imagen, y su aplicación es capaz de seleccionar automáticamente uno que permitirá a la imagen para que quepa completamente dentro de la ventana de visualización, puede configurar hasta la vuelta cuadro como este:
QSpinBox * zoomSpinBox = new QSpinBox;
zoomSpinBox >> SetRange (0, 1000);
zoomSpinBox >> setSingleStep (10);
zoomSpinBox >> setSuffix ("%");
zoomSpinBox >> setSpecialValueText (tr ("Automático"));
zoomSpinBox >> setValue (100);
Después, el usuario podrá elegir una escala de 1% a 1000% o seleccione "Auto" para dejar a la solicitud de elegir. Su código se debe interpretar el valor de cuadro de número 0 como una petición por parte del usuario para escalar la imagen para que quepa en la ventana. Todos los valores se muestran con el prefijo y sufijo (si se define), excepto para el valor especial, que sólo muestra el texto de un valor especial. Este texto especial se pasa en la señal QSpinBox :: valueChanged () que pasa a un QString. Para desactivar la visualización de texto especial valor y llamar a esta función con una cadena vacía. El valor predeterminado es ningún texto especial valor, es decir, el valor numérico se muestra la forma habitual. Si no hay texto especial valor está establecido, specialValueText () devuelve una cadena vacía.
text
Devuelve el texto del control, incluyendo el prefijo y el sufijo.
time
Permite leer o configurar la hora del widget. De forma predeterminada, esta propiedad posee un tiempo de 00:00:00 y 0 milisegundos.
timeSpec
Devuelva la especificación de tiempo empleada. Ver enum TimeSpec.
wrapping
Permite leer o configurar si el valor del control se comportará de modo circular. Esto sólo tiene sentido si se han especificado el valor mínimo y máximo para que el aumento de valor por encima del máximo lleve al valor mínimo y el decremento de valor por debajo del mínimo lleve al máximo.
Documentación de funciones
Funciones generales
void clear()
Limpia el contenido del control.
void selectAll()
Selecciona todo el contenido del control.
void stepDown()
Equivale a pulsar el botón flecha abajo, lo que supone cambiar el valor del control por el del día siguiente.
void stepUp()
Equivale a pulsar el botón flecha arriba, lo que supone cambiar el valor del control por el del día anterior.
Funciones de set
void setCalendarStyle(String colorFondo, String colorTexto, String DíasSemana, String CadenaDiaMeses, Array fechas)
Permite configurar la interfaz de los días del calendario de un control de edición fecha/hora con botón menú y calendario. Equivale al comando de instrucción de proceso Interfaz: Establecer estilo de los días de calendarios.
Parámetros:
colorFondo: cadena con el color de fondo a aplicar al calendario. Podemos especificar, o bien su valor hexadecimal (ejemplo:
"#FFFFFF"
), o bien su nombre (ejemplo:"white"
). Este parámetro es opcional. Si no se especifica, no se aplicará ningún color de fondo al día o días que se configuren en el resto de los parámetros de la función.String colorTexto: cadena con el color de texto a aplicar al calendario. Podemos especificar, o bien su valor hexadecimal (ejemplo:
"#FFFFFF"
), o bien su nombre (ejemplo:"white"
). Este parámetro es opcional. Si no se especifica, no se aplicará ningún color de texto al día o días que se configuren en el resto de los parámetros de la función.String DíasSemana: cadena con los números de día de 1 a 7 o letras para los días a los que se aplicará el estilo separados por comas:
De 1 a 7, día de la semana de lunes a domingo.
"H"
o"T"
para aplicar estilo al día de hoy (admitir mayúsculas y minúsculas). Ejemplo:"1,2,3,4,5"
."S"
para aplicar estilo al día seleccionado en el calendario (admitir mayúsculas y minúsculas).Este parámetro es opcional, si no se especifica, no se aplicará a ningún día.
String CadenaDiaMeses: cadena con los días y meses del año a los que se aplicará el estilo en todos los años, separados por comas y con el formato (d/M), ejemplo:
"1/1,02/02,10/10"
. Este parámetro es opcional, si no se especifica nada, no se aplicará a ningún día/mes en concreto.Array fechas: En este parámetro podremos especificar, o bien un dato de tipo fecha o bien un array con las fechas a las que aplicar el estilo. Este parámetro es opcional, si no lo aplicamos, no se aplicarán los colores configurados a ninguna fecha concreta.
Es funcional solamente en el nuevo motor Javascript, así que, para poder usarla, se debería activar la clave beta jsEngine en cada estación cliente.
void setDate( Date date )
Asigna la fecha al control.
Parámetros:
date: dato de tipo fecha a asignar.
void setDateTime( DateTime datetime )
Asigna el tiempo, fecha y hora al control.
Parámetros:
datetime: dato de tipo tiempo, fecha y hora a asignar.
void setTime( Time time )
Asigna la hora al control.
Parámetros:
time: dato de tipo hora a asignar.
Ejemplo
1. Limitar un control de tipo tiempo a que solo se pueda introducir un tiempo de la fecha actual y entre las 8 y las 18 horas
2. Personalizar los colores de texto de un calendario de un control de edición de fecha/hora con botón menú y calendario
En un manejador de evento de un formulario vamos a personalizar los siguientes colores de días del calendario de un control de edición de fecha/hora con botón menú y calendario. Personalizaremos los colores de los siguientes días:
Días laborables (de lunes a viernes).
Fines de semana y festivos (sábados, domingos y festivos del año).
Para destacar los días 1 de cada mes.
Para destacar el día actual.
Para destacar el día seleccionado en el calendario.
Además, disponemos de una variable local array con las fechas de los días festivos del año.