c++ - 子线程完成后更改 GUI - QT

标签 c++ multithreading qt

我有一个关于 QT 线程的问题。在我的应用程序 GUI 中,我想将图像添加到窗口,一段时间后(当子线程完成他的工作并关闭时)我想删除这个图像。 在这种情况下如何通知主线程子线程完成了他的工作? 我修改了一些 QT 文档,但没有帮助: http://qt-project.org/doc/qt-4.8/thread-basics.html 如果需要,我会添加一些代码。 预先感谢您的帮助。

最佳答案

您需要将 QThread 的信号 finished() 连接到插槽,这将删除您的图像。

小例子:

QObject::connect(your_thread, SIGNAL(finished()), your_class, SLOT(your_slot()));

class YourClass
{
/* ... */

public slots:
    void your_slot() { /* remove image */ }

/* ... */
};

关于c++ - 子线程完成后更改 GUI - QT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25472869/

相关文章:

c++ - 如何在 visual studio 中快速搜索大型代码库的文件内容

c++ - 使用模板元编程计数?

c++ - Windows XP 和 Windows 7 中的不同程序行为

java - 从 Java 发起的数据库查询是否总是阻塞 I/O?

c++ - 如果为鼠标事件设置为透明,您如何仍然使用小部件的功能?

c++ - 向 C++ 数组添加维度?

c++ - OpenCV:H.264 编码视频的文件大小

android - 在 Android 中使用计时器跳出无限循环

c++ - Qt gridlayout方形单元格

linux - 当我在 Qt 中通过 QProcess 调用脚本时,很少有 shell 命令不起作用