2

我正在将一组 100 张图像加载到QTableWidget. 由于加载大约需要 4 秒,我想显示一个带有活动指示器或微调器等的进度条(自定义)。如何通过信号和插槽以及加载图像后同时更新 GUI 和进度条?

4

2 回答 2

0

您的事件循环正忙于您的主要任务,因此无法处理您的请求。事件循环空闲后将调用所有插槽。您的选择是:

  1. 将慢速处理移至另一个线程。这可能不是一个选项,因为您无法在非主线程中与 Qt 的小部件进行交互。
  2. QApplication::processEvents()每次您希望应用 GUI 更改时调用。这是一个常见且简单的解决方案。此函数将执行您的插槽(如果有任何调用被调度),更新 GUI 并将执行流程返回给您。
于 2012-12-23T16:48:20.947 回答
0

加载图像的更好方法是使用在QThread处理图像时发出信号,并将该信号连接到主小部件中的插槽,这里有几个示例

于 2012-12-24T02:19:47.693 回答