【发布时间】:2020-03-01 07:52:02
【问题描述】:
def on3_click(self):
subprocess.call('ip a',shell=True)
您好,这个clicked.connect 指针允许我使用ip acommand 打印出我的桌面IP 地址,但它只会在终端中打印出来。如何在 QMessageBox 或其他 GUI 窗口中显示子进程的输出?
【问题讨论】:
标签: ubuntu subprocess pyqt5
def on3_click(self):
subprocess.call('ip a',shell=True)
您好,这个clicked.connect 指针允许我使用ip acommand 打印出我的桌面IP 地址,但它只会在终端中打印出来。如何在 QMessageBox 或其他 GUI 窗口中显示子进程的输出?
【问题讨论】:
标签: ubuntu subprocess pyqt5
您可以将子进程调用的输出收集为字符串,然后打开一个 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)
【讨论】: