在Qt中添加日期和时间选择器可以使用QDateEdit和QTimeEdit控件。这两个控件都继承自QDateTimeEdit类,因此它们的用法非常相似。
以下是一个示例代码,演示如何创建一个包含日期和时间选择器的窗口:
#include <QtWidgets>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建主窗口
QMainWindow mainWindow;
// 创建日期选择器,并设置初始值为当前日期
QDateEdit dateEdit;
dateEdit.setDate(QDate::currentDate());
// 创建时间选择器,并设置初始值为当前时间
QTimeEdit timeEdit;
timeEdit.setTime(QTime::currentTime());
// 将日期和时间选择器放置在垂直布局中
QVBoxLayout layout;
layout.addWidget(&dateEdit);
layout.addWidget(&timeEdit);
// 创建QWidget对象并将其设置为主窗口的中心部件
QWidget centralWidget;
centralWidget.setLayout(&layout);
mainWindow.setCentralWidget(¢ralWidget);
mainWindow.show();
return app.exec();
}
运行上述代码后,您应该能够看到一个包含了日期和时间选择器的窗口。
请注意,通过date()函数可以获取日期选择器的当前值,通过time()函数可以获取时间选择器的当前值。如果您希望同时获取日期和时间信息,则可以使用dateTime()函数。例如:
QDateTime dateTime = QDateTime(dateEdit.date(), timeEdit.time());
qDebug() << "Selected datetime: " << dateTime.toString(Qt::ISODate);
以上代码将创建一个QDateTime对象,包含了日期选择器和时间选择器的当前值,并将其输出到控制台。