繁体   English   中英

PYQT4中的故障禁用按钮

[英]Trouble disabling buttons in PYQT4

嗨,我有一个GUI,用于选择要处理的文件。

当他单击“过程”时,我希望禁用按钮(“退出”和“过程”)。 我已经尝试过“ self.Qbtn.setEnabled(False)”,但它似乎不起作用。 按钮保持正常。

这是一个简明的代码,该功能大约需要2秒钟才能处理。 你看到奇怪的东西了吗? 有什么建议吗? Python 2.7.3,Pyqt4

class GuiPTCR(QtGui.QWidget): (the indent is ok)
def __init__(self):
    super(GuiPTCR, self).__init__()

    self.initUI()

def initUI(self):        
    self.Qbtn = QtGui.QPushButton('Quitter'.decode('utf-8').encode(enco), self)
    self.Qbtn.clicked.connect(QtCore.QCoreApplication.instance().quit)  #    QtCore.QCoreApplication.instance().quit
    self.Qbtn.setToolTip('Quitter'.decode('utf-8').encode(enco))
    self.Qbtn.resize(self.Qbtn.sizeHint())

    self.btnTraiter = QtGui.QPushButton("Traiter".decode('utf-8').encode(enco))
    self.btnTraiter.clicked.connect(self.Traiter1)   

def Traiter1(self):
    import os

    self.Qbtn.setEnabled(False)
    self.btnTraiter.setEnabled(False)

    fichierRes = Traiter()

    self.Qbtn.setEnabled(True)
    self.btnTraiter.setEnabled(True)

    self.res.setText("Fait en {:.2f} secondes".format(elapsed))
    if self.OuvrirRes.checkState() == 2:
        os.startfile(fichierRes)

你可以尝试调用QtGui.QApplication.processEvents()只调用之前Traiter() 在这里阅读更多:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM