PyQt4:QProcess readyRead并不总是正确发出

2024-04-20 01:35:33 发布

您现在位置:Python中文网/ 问答频道 /正文

当我使用pyqt运行一个程序时,我不能每次都正确地得到输出。 下面是一个例子:

from PyQt4 import QtCore, QtGui
import sys


class MainWindow(QtGui.QMainWindow):
    def __init__(self):
        QtGui.QWidget.__init__(self)

        program = "ping"

        self.process = QtCore.QProcess()
        self.process.readyRead.connect(self.readoutput)
        self.process.start(program)

    def readoutput(self):
        print str(self.process.readAll())

def main():
    app = QtGui.QApplication(sys.argv)
    ex = MainWindow()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()

在本例中,输出是ping命令的助手,正如我所期望的那样。虽然如果我将程序变量更改为其他值,但它并不总是有效的,例如,如果我这样做:

^{pr2}$

它不会像在控制台中那样打印pyinstaller的助手。 在这种情况下,我应该如何得到输出?在


Tags: importself程序appinitmaindefsys