使用Python代码引用PySide6将一个exe程序的窗体嵌入到Qt主窗口中
时间: 2024-05-16 21:11:53 浏览: 174
外部程序嵌入到Qt进程界面---附源码
下面是Python代码引用PySide6将一个exe程序的窗体嵌入到Qt主窗口中的示例:
```python
import sys
from PySide6 import QtCore, QtWidgets, QtWebEngineWidgets
class EmbeddedWindow(QtWidgets.QWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.embedded = QtWebEngineWidgets.QWebEngineView(self)
self.embedded.setUrl(QtCore.QUrl.fromLocalFile('/path/to/my_program.exe'))
layout = QtWidgets.QVBoxLayout(self)
layout.setContentsMargins(0, 0, 0, 0)
layout.addWidget(self.embedded)
class MainWindow(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
central_widget = QtWidgets.QWidget()
self.setCentralWidget(central_widget)
layout = QtWidgets.QHBoxLayout(central_widget)
layout.setContentsMargins(0, 0, 0, 0)
layout.addWidget(EmbeddedWindow())
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = MainWindow()
window.showMaximized()
sys.exit(app.exec_())
```
这段代码将一个名为my_program.exe的程序嵌入到PySide6主窗口中,使用QtWebEngineWidgets.QWebEngineView在PySide6中构建一个嵌入的窗口。主窗口使用QtWidgets.QMainWindow构建,其内部的布局是QtWidgets.QHBoxLayout。最后,我们在主函数中实例化主窗口并运行应用程序。
阅读全文