在 Qt 中,我试图设置一个 QTimer
每秒调用一个名为“更新”的函数。这是我的 .cpp 文件:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QTimer>
#include "QDebug"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(update()));
timer->start(1000);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::update()
{
qDebug() << "update";
}
和主要的:
#include <QtGui/QApplication>
#include "mainwindow.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
该项目正在构建,但它不执行更新,因为“更新”行没有显示在任何地方......有没有人看到我做错了什么?
最佳答案
QTimer
使用 Qt 的内存管理系统。 update()
是一个 QWidget 函数 - 那是你想要调用的吗? http://qt-project.org/doc/qt-4.8/qwidget.html#update . 关于qt - 如何使用 QTimer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11651852/