The Q3DateEdit class provides a date editor. More...
#include <Q3DateEdit>
This class is part of the Qt 3 support library. It is provided to keep old source code working. We strongly advise against using it in new code. See Porting to Qt 4 for more information.
Inherits: Q3DateTimeEditBase.
enum | Order { MDY, DMY, YMD } |
|
Q3DateEdit ( QWidget * parent = 0, const char * name = 0 ) | |
Q3DateEdit ( const QDate & date, QWidget * parent = 0, const char * name = 0 ) | |
~Q3DateEdit () | |
bool | autoAdvance () const |
QDate | date () const |
QDate | maxValue () const |
QDate | minValue () const |
Order | order () const |
QString | separator () const |
virtual void | setAutoAdvance ( bool advance ) |
virtual void | setMaxValue ( const QDate & d ) |
virtual void | setMinValue ( const QDate & d ) |
virtual void | setOrder ( Order order ) |
virtual void | setRange ( const QDate & min, const QDate & max ) |
virtual void | setSeparator ( const QString & s ) |
virtual QSize | minimumSizeHint () const |
virtual QSize | sizeHint () const |
virtual void | setDate ( const QDate & date ) |
void | valueChanged ( const QDate & date ) |
virtual void | fix () |
virtual void | setDay ( int day ) |
virtual void | setMonth ( int month ) |
virtual void | setYear ( int year ) |
virtual bool | event ( QEvent * e ) |
virtual void | resizeEvent ( QResizeEvent * ) |
virtual QString | sectionFormattedText ( int sec ) |
virtual void | timerEvent ( QTimerEvent * ) |
void | updateButtons () |
The Q3DateEdit class provides a date editor.
Q3DateEdit allows the user to edit dates by using the keyboard or the arrow keys to increase/decrease date values. The arrow keys can be used to move from section to section within the Q3DateEdit box. Dates appear in accordance with the local date/time settings or in year, month, day order if the system doesn't provide this information. It is recommended that the Q3DateEdit be initialised with a date, e.g.
Q3DateEdit *dateEdit = new Q3DateEdit(QDate::currentDate(), this); dateEdit->setRange(QDate::currentDate().addDays(-365), QDate::currentDate().addDays( 365)); dateEdit->setOrder(Q3DateEdit::MDY); dateEdit->setAutoAdvance(true);
Here we've created a new Q3DateEdit object initialised with today's date and restricted the valid date range to today plus or minus 365 days. We've set the order to month, day, year. If the auto advance property is true (as we've set it here) when the user completes a section of the date, e.g. enters two digits for the month, they are automatically taken to the next section.
The maximum and minimum values for a date value in the date editor default to the maximum and minimum values for a QDate. You can change this by calling setMinValue(), setMaxValue() or setRange().
Terminology: A Q3DateEdit widget comprises three 'sections', one each for the year, month and day. You can change the separator character using Q3DateTimeEditor::setSeparator(), by default the separator will be taken from the systems settings. If that is not possible, it defaults to "-".
See also QDate, Q3TimeEdit, and Q3DateTimeEdit.
This enum defines the order in which the sections that comprise a date appear.
Constant | Value | Description |
---|---|---|
Q3DateEdit::MDY | 1 | month-day-year |
Q3DateEdit::DMY | 0 | day-month-year |
Q3DateEdit::YMD | 2 | year-month-day (the default) |
This property holds whether the editor automatically advances to the next section.
If autoAdvance is true, the editor will automatically advance focus to the next date section if a user has completed a section. The default is false.
Access functions:
bool | autoAdvance () const |
virtual void | setAutoAdvance ( bool advance ) |
This property holds the editor's date value.
If the date property is not valid, the editor displays all zeroes and Q3DateEdit::date() will return an invalid date. It is strongly recommended that the editor is given a default date value (e.g. currentDate()). That way, attempts to set the date property to an invalid date will fail.
When changing the date property, if the date is less than minValue(), or is greater than maxValue(), nothing happens.
Access functions:
QDate | date () const |
virtual void | setDate ( const QDate & date ) |
This property holds the editor's maximum value.
Setting the maximum date value for the editor is equivalent to calling Q3DateEdit::setRange(minValue(), d), where d is the maximum date. The default maximum date is 8000-12-31.
Access functions:
QDate | maxValue () const |
virtual void | setMaxValue ( const QDate & d ) |
See also minValue and setRange().
This property holds the editor's minimum value.
Setting the minimum date value is equivalent to calling Q3DateEdit::setRange(d, maxValue()), where d is the minimum date. The default minimum date is 1752-09-14.
Access functions:
QDate | minValue () const |
virtual void | setMinValue ( const QDate & d ) |
See also maxValue and setRange().
This property holds the order in which the year, month and day appear.
The default order is locale dependent.
Access functions:
Order | order () const |
virtual void | setOrder ( Order order ) |
See also Order.
Constructs an empty date editor which is a child of parent and called name name.
This is an overloaded function.
Constructs a date editor with the initial value date, parent parent and called name.
The date editor is initialized with date.
Destroys the object and frees any allocated resources.
Reimplemented from QObject::event().
Attempts to fix any invalid date entries.
The rules applied are as follows:
Reimplemented from QWidget::minimumSizeHint().
Reimplemented from QWidget::resizeEvent().
Returns the formatted number for section sec. This will correspond to either the year, month or day section, depending on the current display order.
See also setOrder().
Returns the editor's separator.
See also setSeparator().
Sets the day to day, which must be a valid day. The function will ensure that the day set is valid for the month and year.
Sets the month to month, which must be a valid month, i.e. between 1 and 12.
Sets the valid input range for the editor to be from min to max inclusive. If min is invalid no minimum date will be set. Similarly, if max is invalid no maximum date will be set.
Sets the separator to s. Note that currently only the first character of s is used.
See also separator().
Sets the year to year, which must be a valid year. The range currently supported is from 1752 to 8000.
See also QDate.
Reimplemented from QWidget::sizeHint().
Reimplemented from QObject::timerEvent().
Enables/disables the push buttons according to the min/max date for this widget.
This signal is emitted whenever the editor's value changes. The date parameter is the new value.
© 2008-2011 Nokia Corporation and/or its subsidiaries. Nokia, Qt and their respective logos are trademarks of Nokia Corporation in Finland and/or other countries worldwide.
All other trademarks are property of their respective owners. Privacy Policy
Licensees holding valid Qt Commercial licenses may use this document in accordance with the Qt Commercial License Agreement provided with the Software or, alternatively, in accordance with the terms contained in a written agreement between you and Nokia.
Alternatively, this document may be used under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation.