Класс QDateTimeEdit
Класс QDateTimeEdit предоставляет виджет для редактирования дат и времени. Подробнее...
| Заголовок: | #include <QDateTimeEdit> |
| qmake: | QT += widgets |
| Наследуется от: | QAbstractSpinBox |
| Наследующие классы: |
Открытые типы
| перечисление | Section { NoSection, AmPmSection, MSecSection, SecondSection, ..., YearSection } |
| флаги | Sections |
Свойства
|
|
- 12 свойств унаследовано от QAbstractSpinBox
- 58 свойств унаследовано от QWidget
- 1 свойство унаследовано от QObject
Открытые функции
| QDateTimeEdit(QWidget *parent = Q_NULLPTR) | |
| QDateTimeEdit(const QDateTime &datetime, QWidget *parent = Q_NULLPTR) | |
| QDateTimeEdit(const QDate &date, QWidget *parent = Q_NULLPTR) | |
| QDateTimeEdit(const QTime &time, QWidget *parent = Q_NULLPTR) | |
| ~QDateTimeEdit() | |
| bool | calendarPopup() const |
| QCalendarWidget * | calendarWidget() const |
| void | clearMaximumDate() |
| void | clearMaximumDateTime() |
| void | clearMaximumTime() |
| void | clearMinimumDate() |
| void | clearMinimumDateTime() |
| void | clearMinimumTime() |
| Раздел | currentSection() const |
| int | currentSectionIndex() const |
| QDate | date() const |
| QDateTime | dateTime() const |
| QString | displayFormat() const |
| Разделы | displayedSections() const |
| QDate | maximumDate() const |
| QDateTime | maximumDateTime() const |
| QTime | maximumTime() const |
| QDate | minimumDate() const |
| QDateTime | minimumDateTime() const |
| QTime | minimumTime() const |
| Раздел | sectionAt(int index) const |
| int | sectionCount() const |
| QString | sectionText(Section section) const |
| void | setCalendarPopup(bool enable) |
| void | setCalendarWidget(QCalendarWidget *calendarWidget) |
| void | setCurrentSection(Section section) |
| void | setCurrentSectionIndex(int index) |
| void | setDateRange(const QDate &min, const QDate &max) |
| void | setDateTimeRange(const QDateTime &min, const QDateTime &max) |
| void | setDisplayFormat(const QString &format) |
| void | setMaximumDate(const QDate &max) |
| void | setMaximumDateTime(const QDateTime &dt) |
| void | setMaximumTime(const QTime &max) |
| void | setMinimumDate(const QDate &min) |
| void | setMinimumDateTime(const QDateTime &dt) |
| void | setMinimumTime(const QTime &min) |
| void | setSelectedSection(Section section) |
| void | setTimeRange(const QTime &min, const QTime &max) |
| void | setTimeSpec(Qt::TimeSpec spec) |
| QTime | time() const |
| Qt::TimeSpec | timeSpec() const |
Реализованные общедоступные функции
| virtual void | clear() |
| virtual bool | event(QEvent *event) |
| virtual QSize | sizeHint() const |
| virtual void | stepBy(int steps) |
- 30 общедоступных функций, унаследованных от QAbstractSpinBox
- 211 общедоступных функций, унаследованных от QWidget
- 31 общедоступных функций, унаследованных от QObject
- 14 общедоступных функций, унаследованных от QPaintDevice
Общедоступные слоты
| void | setDate(const QDate &date) |
| void | setDateTime(const QDateTime &dateTime) |
| void | setTime(const QTime &time) |
- 4 общедоступных слота, унаследованных от QAbstractSpinBox
- 19 общедоступных слотов, унаследованных от QWidget
- 1 общедоступный слот, унаследованный от QObject
Сигналы
| void | dateChanged(const QDate &date) |
| void | dateTimeChanged(const QDateTime &datetime) |
| void | timeChanged(const QTime &time) |
- 1 сигнал унаследован от QAbstractSpinBox
- 3 сигнала унаследованных от QWidget
- 2 сигнала унаследованных от QObject
Защищённые функции
| virtual QDateTime | dateTimeFromText(const QString &text) const |
| void | initStyleOption(QStyleOptionSpinBox *option) const |
| virtual QString | textFromDateTime(const QDateTime &dateTime) const |
Переопределённые защищённые функции
| virtual void | fixup(QString &input) const |
| virtual void | focusInEvent(QFocusEvent *event) |
| virtual bool | focusNextPrevChild(bool next) |
| virtual void | keyPressEvent(QKeyEvent *event) |
| virtual void | mousePressEvent(QMouseEvent *event) |
| virtual void | paintEvent(QPaintEvent *event) |
| virtual StepEnabled | stepEnabled() const |
| virtual QValidator::State | validate(QString &text, int &pos) const |
| virtual void | wheelEvent(QWheelEvent *event) |
- 20 защищённых функций унаследованных от QAbstractSpinBox
- 35 защищённых функций унаследованных от QWidget
- 9 защищённых функций унаследованных от QObject
- 1 защищённая функция унаследованная от QPaintDevice
Дополнительные унаследованные члены
- 5 статических публичных членов унаследованных от QWidget
- 11 статических публичных членов унаследованных от QObject
- 1 защищённый слот унаследованный от QWidget
Подробное описание
Класс QDateTimeEdit предоставляет виджет для редактирования дат и времени.
QDateTimeEdit позволяет пользователю редактировать даты с помощью клавиатуры или клавиш со стрелками для увеличения и уменьшения значений даты и времени. Клавиши со стрелками могут использоваться для перехода между разделами в поле QDateTimeEdit. Даты и время отображаются в соответствии с заданным форматом; см. setDisplayFormat().
QDateTimeEdit *dateEdit = new QDateTimeEdit(QDate::currentDate());
dateEdit->setMinimumDate(QDate::currentDate().addDays(-365));
dateEdit->setMaximumDate(QDate::currentDate().addDays(365));
dateEdit->setDisplayFormat("yyyy.MM.dd"); Здесь мы создали новый объект QDateTimeEdit, инициализированный сегодняшней датой, и ограничили допустимый диапазон дат сегодняшним днем плюс или минус 365 дней. Мы установили порядок месяц, день, год.
Минимальное значение для QDateTimeEdit — 14 сентября 1752 года. Вы можете изменить это, вызвав setMinimumDate(), принимая во внимание, что минимальное значение для QDate — 2 января 4713 г. до н. э.
Другие полезные функции — setMaximumDate(), setMinimumTime() и setMaximumTime().
Использование всплывающего календаря
QDateTimeEdit можно настроить для использования QCalendarWidget для выбора дат. Это включается установкой свойства calendarPopup. Кроме того, вы можете предоставить пользовательский календарь для использования в качестве всплывающего календаря, вызвав функцию setCalendarWidget(). Существующий календарь можно получить с помощью calendarWidget().
| Виджет редактирования даты и времени, отображаемый в стиле виджета Windows Vista. | |
| Виджет редактирования даты и времени, отображаемый в стиле виджета Macintosh. | |
| Виджет редактирования даты и времени, отображаемый в стиле виджета Fusion. |
См. также QDateEdit, QTimeEdit, QDate и QTime.
Документация по типам членов
enum QDateTimeEdit::Sectionflags QDateTimeEdit::Sections
| Постоянная | Значение |
|---|---|
QDateTimeEdit::NoSection |
0x0000 |
QDateTimeEdit::AmPmSection |
0x0001 |
QDateTimeEdit::MSecSection |
0x0002 |
QDateTimeEdit::SecondSection |
0x0004 |
QDateTimeEdit::MinuteSection |
0x0008 |
QDateTimeEdit::HourSection |
0x0010 |
QDateTimeEdit::DaySection |
0x0100 |
QDateTimeEdit::MonthSection |
0x0200 |
QDateTimeEdit::YearSection |
0x0400 |
Тип Sections является псевдонимом для QFlags<Section>. Он хранит комбинацию значений Section, объединённых оператором OR.
Документация свойств
calendarPopup : bool
Это свойство содержит текущий режим отображения всплывающего календаря.
Всплывающий календарь будет отображаться при нажатии на кнопку со стрелкой. Это свойство действует только при наличии допустимого формата отображения даты.
Это свойство было введено в Qt 4.2.
Функции доступа:
| bool | calendarPopup() const |
| void | setCalendarPopup(bool enable) |
См. также setDisplayFormat().
currentSection : Section
Это свойство содержит текущую секцию спинбокса setCurrentSection()
Функции доступа:
| Section | currentSection() const |
| void | setCurrentSection(Section section) |
currentSectionIndex : int
Это свойство содержит текущий индекс секции спинбокса
Если формат — 'yyyy/MM/dd', displayText — '2001/05/21', а cursorPosition — 5, currentSectionIndex возвращает 1. Если cursorPosition — 3, currentSectionIndex — 0 и так далее.
setCurrentSection()
Это свойство было введено в Qt 4.3.
Функции доступа:
| int | currentSectionIndex() const |
| void | setCurrentSectionIndex(int index) |
См. также currentSection().
date : QDate
Это свойство содержит QDate, установленный в виджете.
По умолчанию это свойство содержит дату 1 января 2000 года.
Функции доступа:
| QDate | date() const |
| void | setDate(const QDate &date) |
Сигнал уведомления:
| void | dateChanged(const QDate &date) |
dateTime : QDateTime
Это свойство содержит QDateTime, установленный в QDateTimeEdit.
При установке этого свойства временная метка QDateTimeEdit остается прежней, а временная метка нового QDateTime игнорируется.
По умолчанию это свойство содержит дату 1 января 2000 года и время 00:00:00 и 0 миллисекунд.
Функции доступа:
| QDateTime | dateTime() const |
| void | setDateTime(const QDateTime &dateTime) |
Сигнал уведомления:
| void | dateTimeChanged(const QDateTime &datetime) |
displayFormat : QString
Это свойство содержит формат, используемый для отображения времени/даты в редакторе даты и времени.
Этот формат описан в QDateTime::toString() и QDateTime::fromString()
Примеры форматов (предполагается, что дата — 2 июля 1969 года):
| Формат | Результат |
|---|---|
| дд.мм.гггг | 02.07.1969 |
| MMM d yy | Июл 2 69 |
| MMMM d yy | Июль 2 69 |
Обратите внимание, что если вы укажете двухзначный год, он будет интерпретирован как год в том столетии, в котором было инициализировано редактирование даты и времени. По умолчанию столетие — 21 (2000-2099).
Если вы укажете неверный формат, формат не будет установлен.
Функции доступа:
| QString | displayFormat() const |
| void | setDisplayFormat(const QString &format) |
См. также QDateTime::toString() и displayedSections().
displayedSections : const Sections
Это свойство содержит текущие отображаемые поля редактора даты и времени
Возвращает набор отображаемых разделов для этого формата. setDisplayFormat(), displayFormat()
Функции доступа:
| Sections | displayedSections() const |
maximumDate : QDate
Это свойство содержит максимальную дату редактора даты и времени
При установке этого свойства свойство minimumDate корректируется при необходимости, чтобы диапазон оставался допустимым. Если дата не является допустимым объектом QDate, эта функция ничего не делает.
По умолчанию это свойство содержит дату, которая относится к 31 декабря 7999 года.
Функции доступа:
| QDate | maximumDate() const |
| void | setMaximumDate(const QDate &max) |
| void | clearMaximumDate() |
См. также minimumDate, minimumTime, maximumTime и setDateRange().
maximumDateTime : QDateTime
Это свойство содержит максимальную дату и время редактора даты и времени
При установке этого свойства minimumDateTime() корректируется при необходимости, чтобы диапазон оставался допустимым. Если дата и время не являются допустимым объектом QDateTime, эта функция ничего не делает.
Значение по умолчанию maximumDateTime можно восстановить с помощью clearMaximumDateTime().
По умолчанию это свойство содержит дату 31 декабря 7999 года и время 23:59:59, 999 миллисекунд.
Это свойство было добавлено в Qt 4.4.
Функции доступа:
| QDateTime | maximumDateTime() const |
| void | setMaximumDateTime(const QDateTime &dt) |
| void | clearMaximumDateTime() |
См. также minimumDateTime(), minimumTime(), maximumTime(), minimumDate(), maximumDate(), setDateTimeRange(), setDateRange(), setTimeRange(), clearMinimumDateTime(), clearMinimumDate(), clearMaximumDate(), clearMinimumTime(), и clearMaximumTime().
maximumTime : QTime
Это свойство содержит максимальное время редактора даты и времени
При установке этого свойства свойство minimumTime корректируется при необходимости, чтобы диапазон оставался допустимым. Если время не является допустимым объектом QTime, эта функция ничего не делает.
По умолчанию это свойство содержит время 23:59:59, 999 миллисекунд.
Функции доступа:
| QTime | maximumTime() const |
| void | setMaximumTime(const QTime &max) |
| void | clearMaximumTime() |
См. также minimumTime, minimumDate, maximumDate и setTimeRange().
minimumDate : QDate
Это свойство содержит минимальную дату редактирования даты и времени.
При установке этого свойства maximumDate корректируется при необходимости, чтобы обеспечить сохранение допустимого диапазона. Если дата не является допустимым объектом QDate, эта функция ничего не делает.
По умолчанию это свойство содержит дату, которая относится к 14 сентября 1752 года. Минимальная дата должна быть не ранее первого дня 100-го года, в противном случае setMinimumDate() не имеет эффекта.
Функции доступа:
| QDate | minimumDate() const |
| void | setMinimumDate(const QDate &min) |
| void | clearMinimumDate() |
См. также minimumTime(), maximumTime() и setDateRange().
minimumDateTime : QDateTime
Это свойство содержит минимальную дату и время редактирования даты и времени.
При установке этого свойства maximumDateTime() корректируется при необходимости, чтобы обеспечить сохранение допустимого диапазона. Если дата и время не являются допустимым объектом QDateTime, эта функция ничего не делает.
Значение по умолчанию для minimumDateTime можно восстановить с помощью clearMinimumDateTime().
По умолчанию это свойство содержит дату, которая относится к 14 сентября 1752 года, и время 00:00:00 и 0 миллисекунд.
Это свойство было введено в Qt 4.4.
Функции доступа:
| QDateTime | minimumDateTime() const |
| void | setMinimumDateTime(const QDateTime &dt) |
| void | clearMinimumDateTime() |
См. также maximumDateTime(), minimumTime(), maximumTime(), minimumDate(), maximumDate(), setDateTimeRange(), setDateRange(), setTimeRange(), clearMaximumDateTime(), clearMinimumDate(), clearMaximumDate(), clearMinimumTime() и clearMaximumTime().
minimumTime : QTime
Это свойство содержит минимальное время редактирования даты и времени.
При установке этого свойства maximumTime корректируется при необходимости, чтобы обеспечить сохранение допустимого диапазона. Если время не является допустимым объектом QTime, эта функция ничего не делает.
По умолчанию это свойство содержит время 00:00:00 и 0 миллисекунд.
Функции доступа:
| QTime | minimumTime() const |
| void | setMinimumTime(const QTime &min) |
| void | clearMinimumTime() |
См. также maximumTime, minimumDate, maximumDate и setTimeRange().
sectionCount : const int
Это свойство хранит количество отображаемых разделов. Если формат — 'гггг/гг/гггг', sectionCount возвращает 3
Это свойство было введено в Qt 4.3.
Функции доступа:
| int | sectionCount() const |
time : QTime
Это свойство хранит QTime, установленное в виджете.
По умолчанию это свойство содержит время 00:00:00 и 0 миллисекунд.
Функции доступа:
| QTime | time() const |
| void | setTime(const QTime &time) |
Сигнал уведомления:
| void | timeChanged(const QTime &time) |
timeSpec : Qt::TimeSpec
Это свойство хранит текущий формат времени, используемый редактором даты и времени.
Это свойство было введено в Qt 4.4.
Функции доступа:
| Qt::TimeSpec | timeSpec() const |
| void | setTimeSpec(Qt::TimeSpec spec) |
Документация по членам-функциям
QDateTimeEdit::QDateTimeEdit(QWidget *parent = Q_NULLPTR)
Создает пустой редактор даты и времени с указанным parent.
QDateTimeEdit::QDateTimeEdit(const QDateTime &datetime, QWidget *parent = Q_NULLPTR)
Создаёт пустой редактор даты и времени с указанным parent. Значение устанавливается в datetime.
QDateTimeEdit::QDateTimeEdit(const QDate &date, QWidget *parent = Q_NULLPTR)
Создаёт пустой редактор даты и времени с указанным parent. Значение устанавливается в date.
QDateTimeEdit::QDateTimeEdit(const QTime &time, QWidget *parent = Q_NULLPTR)
Создаёт пустой редактор даты и времени с указанным parent. Значение устанавливается в time.
QDateTimeEdit::~QDateTimeEdit()
Деструктор.
QCalendarWidget *QDateTimeEdit::calendarWidget() const
Возвращает виджет календаря для редактора, если calendarPopup установлен в значение true и (sections() & DateSections_Mask) != 0.
Эта функция создаёт и возвращает виджет календаря, если он не задан.
Эта функция была введена в Qt 4.4.
См. также setCalendarWidget().
[virtual] void QDateTimeEdit::clear()
Переопределено из QAbstractSpinBox::clear().
QDate QDateTimeEdit::date() const
Возвращает дату редактора даты и времени.
Примечание: Функция-геттер для свойства date.
См. также setDate().
[signal] void QDateTimeEdit::dateChanged(const QDate &date)
Этот сигнал испускается всякий раз, когда дата изменяется. Новая дата передаётся в date.
Примечание: Сигнал уведомления для свойства date.
[signal] void QDateTimeEdit::dateTimeChanged(const QDateTime &datetime)
Этот сигнал испускается всякий раз, когда дата или время изменяются. Новая дата и время передаются в datetime.
Примечание: Сигнал уведомления для свойства dateTime.
[virtual protected] QDateTime QDateTimeEdit::dateTimeFromText(const QString &text) const
Возвращает соответствующую дату и время для заданного значения text.
Эта виртуальная функция используется редактором даты и времени всякий раз, когда ему нужно интерпретировать текст, введённый пользователем, как значение.
См. также textFromDateTime() и validate().
[virtual] bool QDateTimeEdit::event(QEvent *event)
Переопределяет метод QObject::event().
[virtual protected] void QDateTimeEdit::fixup(QString &input) const
Переопределяет метод QAbstractSpinBox::fixup().
[virtual protected] void QDateTimeEdit::focusInEvent(QFocusEvent *event)
Переопределяет метод QWidget::focusInEvent().
[virtual protected] bool QDateTimeEdit::focusNextPrevChild(bool next)
Переопределяет метод QWidget::focusNextPrevChild().
[protected] void QDateTimeEdit::initStyleOption(QStyleOptionSpinBox *option) const
Инициализирует option значениями из этого QDataTimeEdit. Этот метод полезен для подклассов, когда им нужен QStyleOptionSpinBox, но они не хотят заполнять всю информацию сами.
См. также QStyleOption::initFrom().
[virtual protected] void QDateTimeEdit::keyPressEvent(QKeyEvent *event)
Переопределяет метод QWidget::keyPressEvent().
[virtual protected] void QDateTimeEdit::mousePressEvent(QMouseEvent *event)
Переопределяет метод QWidget::mousePressEvent().
[virtual protected] void QDateTimeEdit::paintEvent(QPaintEvent *event)
Переопределяет метод QWidget::paintEvent().
Section QDateTimeEdit::sectionAt(int index) const
Возвращает раздел в позиции index.
Если формат — 'yyyy/MM/dd', sectionAt(0) возвращает YearSection, sectionAt(1) — MonthSection, а sectionAt(2) — DaySection.
Эта функция была добавлена в Qt 4.3.
QString QDateTimeEdit::sectionText(Section section) const
Возвращает текст из заданного раздела section.
См. также currentSection().
void QDateTimeEdit::setCalendarWidget(QCalendarWidget *calendarWidget)
Устанавливает заданный calendarWidget в качестве виджета, используемого для всплывающего календаря. Редактор не принимает автоматического владения виджетом календаря.
Примечание: calendarPopup должен быть установлен в значение true, прежде чем установить виджет календаря.
Эта функция была добавлена в Qt 4.4.
См. также calendarWidget() и calendarPopup.
void QDateTimeEdit::setDateRange(const QDate &min, const QDate &max)
Удобная функция для установки минимальной и максимальной даты с помощью одного вызова.
setDateRange(min, max);
аналогично:
setMinimumDate(min); setMaximumDate(max);
Если min или max не являются допустимыми, эта функция ничего не делает.
См. также setMinimumDate(), maximumDate(), setMaximumDate(), clearMinimumDate(), setMinimumTime(), maximumTime(), setMaximumTime(), clearMinimumTime(), и QDate::isValid().
void QDateTimeEdit::setDateTimeRange(const QDateTime &min, const QDateTime &max)
Функция-утилита для установки минимальной и максимальной даты и времени с помощью одного вызова.
setDateTimeRange(min, max);
аналогична:
setMinimumDateTime(min); setMaximumDateTime(max);
Если min или max не являются допустимыми, эта функция ничего не делает.
Эта функция была добавлена в Qt 4.4.
См. также setMinimumDate(), maximumDate(), setMaximumDate(), clearMinimumDate(), setMinimumTime(), maximumTime(), setMaximumTime(), clearMinimumTime(), и QDateTime::isValid().
void QDateTimeEdit::setSelectedSection(Section section)
Выбирает section. Если section отсутствует в текущих отображаемых секциях, эта функция ничего не делает. Если section равно NoSection, эта функция сбросит выделение всего текста в редакторе. В противном случае эта функция переместит курсор и текущую секцию в выбранную секцию.
Эта функция была добавлена в Qt 4.2.
См. также currentSection().
void QDateTimeEdit::setTimeRange(const QTime &min, const QTime &max)
Функция-утилита для установки минимального и максимального времени с помощью одного вызова.
setTimeRange(min, max);
аналогична:
setMinimumTime(min); setMaximumTime(max);
Если min или max не являются допустимыми, эта функция ничего не делает.
См. также setMinimumDate(), maximumDate(), setMaximumDate(), clearMinimumDate(), setMinimumTime(), maximumTime(), setMaximumTime(), clearMinimumTime(), и QTime::isValid().
[virtual] QSize QDateTimeEdit::sizeHint() const
Переопределено из QWidget::sizeHint().
[virtual] void QDateTimeEdit::stepBy(int steps)
Переопределено из QAbstractSpinBox::stepBy().
[virtual protected] StepEnabled QDateTimeEdit::stepEnabled() const
Переопределено из QAbstractSpinBox::stepEnabled().
[virtual protected] QString QDateTimeEdit::textFromDateTime(const QDateTime &dateTime) const
Эта виртуальная функция используется редактором даты и времени всякий раз, когда ему нужно отобразить dateTime.
Если вы переопределите эту функцию, вам, возможно, также потребуется переопределить validate().
См. также dateTimeFromText() и validate().
QTime QDateTimeEdit::time() const
Возвращает время редактора даты и времени.
Примечание: Функция-получатель свойства time.
См. также setTime().
[signal] void QDateTimeEdit::timeChanged(const QTime &time)
Этот сигнал излучается всякий раз, когда время изменяется. Новое время передается в time.
Примечание: Сигнал-уведомление для свойства time.
[virtual protected] QValidator::State QDateTimeEdit::validate(QString &text, int &pos) const
Переопределено из QAbstractSpinBox::validate().
[virtual protected] void QDateTimeEdit::wheelEvent(QWheelEvent *event)
Переопределено из QWidget::wheelEvent().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qdatetimeedit.html