我想在pyqt中放置一个.exe文件,该文件是使用Qt设计器设计的。我设法显示openCV捕获的视频。但是这次视频捕获文件被转换为可执行文件。我想运行.exe文件并在pyqt UI中显示输出。我已经尝试使用os模块打开一个可执行文件,其中它打开它,但它不在创建的Qlabel小部件内。有没有办法把它放在UI中?谢谢
更新:我已完成研究,但我所看到的只是C ++中的Qt
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
QWindow *window = QWindow::fromWinId(125829124);
QWidget *widget = QWidget::createWindowContainer(window);
widget->setParent(this);
QVBoxLayout *layout = new QVBoxLayout();
layout->addWidget(widget);
this->setLayout(layout);
}
我曾尝试使用此代码,但窗口仍然不在UI中。
class Program(QMainWindow):
def __init__(self):
super().__init__()
exePath = "/home/liva/app.exe"
subprocess.Popen(exePath)
hwnd = 3800003 #the window id of the app.exe
self.window = QWindow.fromWinId(hwnd)
self.setWindowFlags(Qt.FramelessWindowHint)
self.widget = QWidget.createWindowContainer(self.window,self)
self.widget.resize(300, 300)
self.widget.move(400, 300)
print(self.window.parent())
layout = QVBoxLayout()
layout.addWidget(self.widget)
self.setLayout(layout)
self.setGeometry(100, 100, 900, 900)
self.setWindowTitle('UI')
self.show()