【发布时间】:2018-05-01 18:33:48
【问题描述】:
我正在使用在这里找到的 QtWaitingSpinner:https://github.com/snowwlex/QtWaitingSpinner。您可以像这样创建和启动微调器:spinner = QtWaitingSpinner(self); spinner.start()。不幸的是,当我尝试从我的 GUI 发出 POST 请求时,微调器会停止,直到返回响应。因此,我根本看不到微调器,或者如果我过早启动微调器,它会在等待响应时停止旋转。我认为我将不得不使用某种异步方法,例如 QThread 或 asyncio,但目前尚不清楚解决此问题的最佳方法是什么。如果有人能告诉我处理它的最佳方法,我将不胜感激。这是我正在做的简化版本:
class Obj(QDialog):
# some button calls this function when pressed
def submit(self):
#start spinner
spinner = QtWaitingSpinner(self)
spinner.start()
# post some data to some url, spinner should spin
r = requests.post('some_url.com', json=some_data)
# stop spinner
spinner.stop()
【问题讨论】:
标签: python pyqt python-requests pyqt4 pyqt5