等待按钮单击

时间:2013-06-24 20:50:29

标签: python multithreading user-interface pyqt4

我正在尝试创建一个可以运行一些预设测试的GUI。根据用户的选择,将运行分离的测试。我想弄清楚在一个线程中运行测试的最佳方法是什么,然后等到用户按下下一个按钮继续。

程序知道运行什么测试的当前方式是创建一个类似的字典

A = {0:[0,0,0],1:[1,0,1],2:[0,1,1]}

键表示组合框的索引,列表表示测试是否运行,因此0表示不运行该特定测试,1表示不运行。所以,我将有一个for循环,它将通过列表运行,如果它是0,它将转到下一个列表元素,如果它是1,它配置测试运行它然后我希望它等到用户按下一个GUI中的按钮。

编辑:相反,我使用Qtimer实现了一个状态机方法。因此GUI将保持等待状态,直到GUI发送信号在按下按钮后从等待状态转移到下一状态

1 个答案:

答案 0 :(得分:1)

您可以这样做:首先,使用next禁用GUI中的yourNextButton.setDisabled(1)按钮;第二,在测试结束时启用它yourNextButton.setDisabled(0)(我假设它是一种方法);启用按钮,这意味着您的测试已完成,您可以单击它并将其连接到您需要完成的下一个操作(下一个测试或其他任何操作),但不要忘记在单击它时再次禁用它。 如果您需要不同的行为,请随时提出。