Ubuntu 如何在PyQt5中显示子流程输出?

Ubuntu 如何在PyQt5中显示子流程输出?,ubuntu,subprocess,pyqt5,Ubuntu,Subprocess,Pyqt5,您好,单击了此。connect指针允许我使用ip a命令打印桌面ip地址,但它仅在终端中打印。如何在QMessageBox或其他GUI窗口中显示子流程的输出?您可以将子流程调用的输出收集为字符串,然后打开QMessageBox def on3_click(self): subprocess.call('ip a',shell=True) 哇,谢谢你的工作,结果是我的语法有点颠倒了。无论如何,有没有办法调整QMessageBox的大小?看看这篇文章,它有一个很好的答案。 class Te

您好,单击了此
。connect
指针允许我使用
ip a
命令打印桌面ip地址,但它仅在终端中打印。如何在QMessageBox或其他GUI窗口中显示子流程的输出?

您可以将子流程调用的输出收集为字符串,然后打开QMessageBox

def on3_click(self):
    subprocess.call('ip a',shell=True)

哇,谢谢你的工作,结果是我的语法有点颠倒了。无论如何,有没有办法调整QMessageBox的大小?看看这篇文章,它有一个很好的答案。
class Template(QWidget):

    def __init__(self):
        super().__init__()
        btn = QPushButton('Button', self)
        btn.clicked.connect(self.on3_click)

    def on3_click(self):
        ip = str(subprocess.call('ip a', shell=True))
        QMessageBox.information(self, 'Info', ip)