Advertisement
Guest User

embed_terminal_2.py

a guest
Jun 29th, 2020
378
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.59 KB | None | 0 0
  1. import sys
  2. from PyQt5 import QtCore, QtWidgets
  3. from PyQt5.QtCore import QProcess
  4.  
  5.  
  6. class EmbTerminal(QtWidgets.QWidget):
  7.     def __init__(self, parent=None):
  8.         super(EmbTerminal, self).__init__(parent)
  9.         self.process = QtCore.QProcess(self)
  10.         self.terminal = QtWidgets.QWidget(self)
  11.         layout = QtWidgets.QVBoxLayout(self)
  12.         layout.addWidget(self.terminal)
  13.         # Works also with urxvt:
  14.         #self.process.start('qterminal',['', str(int(self.winId()))])
  15.         self.process.start('qterminal', ['into', str(int(self.winId()))])
  16.         print(str(int(self.winId())))
  17.         # self.setFixedSize(640, 480)
  18.  
  19.  
  20. class mainWindow(QtWidgets.QMainWindow):
  21.     def __init__(self, parent=None):
  22.         super(mainWindow, self).__init__(parent)
  23.  
  24.         central_widget = QtWidgets.QWidget()
  25.         lay = QtWidgets.QVBoxLayout(central_widget)
  26.         self.setCentralWidget(central_widget)
  27.  
  28.         tab_widget = QtWidgets.QTabWidget()
  29.         lay.addWidget(tab_widget)
  30.  
  31.         tab_widget.addTab(EmbTerminal(), "EmbTerminal")
  32.         tab_widget.addTab(QtWidgets.QTextEdit(), "QTextEdit")
  33.         tab_widget.addTab(QtWidgets.QMdiArea(), "QMdiArea")
  34.  
  35.  
  36. if __name__ == "__main__":
  37.     app = QtWidgets.QApplication(sys.argv)
  38.     main = mainWindow()
  39.     main.show()
  40.     sys.exit(app.exec_())
  41.  
  42. app = QtWidgets.QApplication(sys.argv)
  43. win = QtWidgets.QWidget()
  44. winID = int(win.winId())
  45.  
  46. sub_win = QtGui.QWindow.fromWinId(winID)
  47. container = QtWidgets.QWidget.createWindowContainer(sub_win)
  48.  
  49. sub_win_id = int(container.winId())
  50.  
  51. process = QtCore.QProcess(container)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement