Qt 写一个实时更新时间的QDatetimeEdit
时间: 2023-02-21 21:02:54 浏览: 630
你可以使用QTimer类来实现实时更新QDatetimeEdit的时间。首先,你需要在你的代码中包含QTimer头文件:
```
#include <QTimer>
```
然后,在你的代码中创建一个QTimer对象,并将其设置为每隔一段时间(例如1秒)触发信号:
```
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(updateTime()));
timer->start(1000);
```
最后,你可以创建一个槽函数来更新QDatetimeEdit的时间:
```
void MainWindow::updateTime() {
QDateTime dateTime = QDateTime::currentDateTime();
ui->dateTimeEdit->setDateTime(dateTime);
}
```
完整代码示例:
```
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QTimer>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(updateTime()));
timer->start(1000);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::updateTime() {
QDateTime dateTime = QDateTime::currentDateTime();
ui->dateTimeEdit->setDateTime(dateTime);
}
```
阅读全文