c++ - QLabel 像视频一样显示图像
问题描述
我尝试让QLabel像视频一样显示图像。
我希望它慢慢地显示我的图像从 f0000.png 到 f0039.png,这样我就可以看到进度。
出于某种原因,我的 for 循环以 50 开头。
当我看到程序运行时,它只显示一个图像,或者它变化太快,我看不到进度。
如何修复它让它显示像视频这样的图像。
解决方案
您可以使用 Qtimer 并将速度设置为您需要的更快
标题:
#include <QMainWindow>
#include <QTimer>
namespace Ui
{
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = nullptr);
~MainWindow() override;
public slots:
void updateLabel();
private:
Ui::MainWindow *ui;
QTimer* _timer;
int index{0};
QString pixResource{};
};
并暗示。
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
_timer = new QTimer(parent);
connect(_timer, SIGNAL(timeout()), this, SLOT(updateLabel()));
_timer->start(1000);
}
MainWindow::~MainWindow()
{
delete ui;
_timer->stop();
delete _timer;
}
void MainWindow::updateLabel()
{
if (index >= 10)
{
index = 0;
}
qDebug() << "index: " << index;
pixResource = "res/foo/image/" + QString::number(index) + ".png";
qDebug() << "now the res: " << pixResource;
index++;
}
推荐阅读
- python - Pygame 窗口在启动 game_loop() 后冻结
- python - Nohup 运行 python 程序
- python - 添加多个重叠立方体的矢量化方法
- apache-spark - 在 Spark 1.6.0 CDH 5.14.2 中集成 Kafka 0.10.x(或更高版本)
- php - 如果是客人,如何在kartik Detail view yii2中隐藏图标?
- python - 将张量板作为 python 子进程运行
- python - 在 Python 中将某些字符列入黑名单
- matlab - 平滑二维曲线
- azure - 有没有办法检索存储在 Azure Key Vault 中的证书的访问公钥?
- scroll - 如何删除 Xamarin.Forms 应用程序中的阴影