QT之QDateTimeEdit觸發日曆
阿新 • • 發佈:2019-02-07
1、QDateTimeEdit觸發日曆
QSize sz = ui->dateTimeEdit->geometry().size() -= QSize(3, 3);
QPoint pt(sz.width(), sz.height());
QMouseEvent evt(QEvent::MouseButtonPress, pt, Qt::LeftButton, Qt::LeftButton, Qt::NoModifier);
qApp->sendEvent(ui->dateTimeEdit, &evt);
ui->dateTimeEdit->setCalendarPopup(true);
效果圖如下:
同時獲取當前日期,並且設定當前日期之前可以操作,之後日期無法選擇!ui->dateEdit->setDateTime(QDateTime::currentDateTime());
ui->dateEdit->setMaximumDate(QDate::currentDate().addDays(0));
應用知識點:(幫助文件)
關於QDateEdit:
1、設定日曆彈出
boolcalendarPopup () const
voidsetCalendarPopup ( bool enable )2、設定日期格式
setDisplayFormat("yyyy/MM/dd");
setDisplayFormat("HH:mm:ss");
3、設定日期最大最小
voidsetMaximumDate ( const QDate & max );
void setMinimumDate( const QDate & max );
4、設定當前時間
setDateTime(QDateTime::currentDateTime())
關於QDateTimeEdit:
設定範圍:
1、void QDateTimeEdit::setDateRange ( const QDate & min, const QDate & max )
setDateRange(min, max);
setMinimumDate(min);
setMaximumDate(max);
2、void QDateTimeEdit::setDateTimeRange ( const QDateTime & min, const QDateTime & max )
setDateTimeRange(min, max);
setMinimumDateTime(min);
setMaximumDateTime(max);