我使用 qt creator C++ 加载了一个图像:
inputImg=new QImage("C:/Bimap/HUD1.bmp")
并且可以在窗户上看到。我想在 5 秒后删除这个图像并加载另一个图像。
有可能做到吗?感谢您的回答。
我使用 qt creator C++ 加载了一个图像:
inputImg=new QImage("C:/Bimap/HUD1.bmp")
并且可以在窗户上看到。我想在 5 秒后删除这个图像并加载另一个图像。
有可能做到吗?感谢您的回答。
你需要做这样的事情(例如在 MainWindow 中):
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(5000);
index = 0;
flag = false;
}
void MainWindow::update()
{
if(flag)
inputImg=new QImage("C:/Bimap/HUD1.bmp");
else
inputImg=new QImage("C:/Bimap/speed.bmp");
flag = !flag;
}
在构造函数中分配图像(或至少一次),然后使用索引来选择它们。
我还添加了一个numImages
变量,以便您可以旋转超过 2 个图像。
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(5000);
index = 0;
numImages = 2;
inputImages[0] = new QImage("C:/Bimap/HUD1.bmp");
inputImages[1] = new QImage("C:/Bimap/speed.bmp");
}
void MainWindow::update()
{
showImage(inputImages[index]);
index = ++index % numImages;
}