xterm在pyqt5 gui外部打开。如何避免呢?

时间:2018-09-11 10:01:54

标签: python python-3.x pyqt5 xterm

下面的代码仅在第一个选项卡中显示一个xterm终端。

class EmbTerminal(QtWidgets.QWidget):
    def __init__(self, parent=None):
        super(EmbTerminal, self).__init__(parent)
        self.process = QtCore.QProcess(self)
        self.terminal = QtWidgets.QWidget(self)
        layout = QtWidgets.QVBoxLayout(self)
        layout.addWidget(self.terminal)

        try:
            print(int(self.winId()))
            self.process.start('xterm',['-into', str(self.winId())])
        except Exception as e:
            print(e)
        self.setFixedSize(640, 480)


class mainWindow(QtWidgets.QMainWindow):
    def __init__(self, parent=None):
        super(mainWindow, self).__init__(parent)

        central_widget = QtWidgets.QWidget()
        lay = QtWidgets.QVBoxLayout(central_widget)
        self.setCentralWidget(central_widget)

        tab_widget = QtWidgets.QTabWidget()
        lay.addWidget(tab_widget)

        tab_widget.addTab(EmbTerminal(), "EmbTerminal")
        tab_widget.addTab(QtWidgets.QTextEdit(), "QTextEdit")
        tab_widget.addTab(QtWidgets.QMdiArea(), "QMdiArea")

if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    main = mainWindow()
    main.show()
    sys.exit(app.exec_())

在执行时,GUI执行xterm命令,并在单独的窗口中打开xterm。

我想在QTabWidget的第一个选项卡的内部(“内部”)打开xterm。我该如何实现?

T.I.A

0 个答案:

没有答案