实现一个简单的QProgressbar PyQT5



我想在GUI中实现一个函数的QProgressbar。我原以为这个过程很简单,但看起来并非如此。

我想我可以这样实现这个栏:

1-按钮被点击2-进度条和功能同时启动3-功能和进度条同时结束

当我搜索时,我发现的是用for循环更新这个栏。我不想这样做,因为我的代码是一个简单的函数,必须只运行一次。

这样做可能吗?还是我误会了什么?我发现启动和停止信号必须用Threading来管理。在我去做进一步的搜索之前,我想在这里问一下。

谢谢。

我认为最好的做法是,使用主线程为QProgressbarQProgressDialog和侧线程为您的功能。

当你的函数使用主线程时,UI不会更新,即使你使用for-loopsetValue

我正在做的是,创建一个QThread,像一个信号给出的进度:

class AThread(QThread):
progress = pyqtSignal(int)
def run(self):
for i in range(100):
self.progress.emit(i)

然后用信号

中的数字设置progressbar的值

相关内容

  • 没有找到相关文章

最新更新