zoukankan      html  css  js  c++  java
  • QtProcessExteriorExe把其他程序加载到Qt界面中

    相关资料:

    https://www.baidu.com/link?url=1uzHF_j5lIqL0FWbARNYLnV2pD1tDzbtcwE4KUsg5KkCUPO_Y3RBODMm-KqUEpu46leD-gVAxkEcL8W9FBR7k_&wd=&eqid=c020dd8c0011bef10000000260ab496e

    https://blog.csdn.net/zhango5/article/details/80901674

    https://blog.csdn.net/jiaoyaziyang/article/details/49802993

    实例:

    .pro

     1 QT       += core gui
     2 
     3 greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
     4 
     5 CONFIG += c++11
     6 
     7 # The following define makes your compiler emit warnings if you use
     8 # any Qt feature that has been marked deprecated (the exact warnings
     9 # depend on your compiler). Please consult the documentation of the
    10 # deprecated API in order to know how to port your code away from it.
    11 DEFINES += QT_DEPRECATED_WARNINGS
    12 
    13 # You can also make your code fail to compile if it uses deprecated APIs.
    14 # In order to do so, uncomment the following line.
    15 # You can also select to disable deprecated APIs only up to a certain version of Qt.
    16 #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
    17 
    18 SOURCES += 
    19     main.cpp 
    20     mainwindow.cpp
    21 
    22 HEADERS += 
    23     mainwindow.h
    24 
    25 FORMS += 
    26     mainwindow.ui
    27 
    28 LIBS += -lUser32
    29 
    30 # Default rules for deployment.
    31 qnx: target.path = /tmp/$${TARGET}/bin
    32 else: unix:!android: target.path = /opt/$${TARGET}/bin
    33 !isEmpty(target.path): INSTALLS += target
    View Code

    main.h

     1 #include "mainwindow.h"
     2 
     3 #include <QApplication>
     4 
     5 int main(int argc, char *argv[])
     6 {
     7     QApplication a(argc, argv);
     8     MainWindow w;
     9     w.show();
    10     return a.exec();
    11 }
    View Code

    mainwindows.h

     1 #ifndef MAINWINDOW_H
     2 #define MAINWINDOW_H
     3 
     4 #include <QMainWindow>
     5 
     6 #include <QWindow>
     7 #include <QPushButton>
     8 #include <QVBoxLayout>
     9 
    10 QT_BEGIN_NAMESPACE
    11 namespace Ui { class MainWindow; }
    12 QT_END_NAMESPACE
    13 
    14 class MainWindow : public QMainWindow
    15 {
    16     Q_OBJECT
    17 
    18 public:
    19     MainWindow(QWidget *parent = nullptr);
    20     ~MainWindow();
    21 
    22 private:
    23     Ui::MainWindow *ui;
    24 
    25     QWidget *m_pWidget;
    26 };
    27 #endif // MAINWINDOW_H
    View Code

    mainwindows.cpp

     1 #include "mainwindow.h"
     2 #include "ui_mainwindow.h"
     3 
     4 #include <Windows.h>
     5 
     6 MainWindow::MainWindow(QWidget *parent)
     7     : QMainWindow(parent)
     8     , ui(new Ui::MainWindow)
     9 {
    10     ui->setupUi(this);
    11 
    12     LPCWSTR className = TEXT("Qt5QWindowIcon");// Qt5QWindowIcon // Notepad++
    13     HWND hwnd = FindWindow(className, NULL);
    14     // WId wid = (WId)FindWindow(L"CalcFrame",NULL);
    15     QWindow *calcWin = QWindow::fromWinId((WId)hwnd);
    16     // calcWin->setFlags(m_window->flags() | Qt::CustomizeWindowHint | Qt::WindowTitleHint);
    17 
    18     QWidget *owidget = new QWidget(this);
    19     owidget->setGeometry(100, 100, this->width(), this->height());
    20     QWidget *calcWidget = QWidget::createWindowContainer(calcWin, owidget, Qt::FramelessWindowHint);
    21     calcWidget->setMinimumSize(600,500);
    22 }
    23 
    24 MainWindow::~MainWindow()
    25 {
    26     delete ui;
    27 }
    View Code
    作者:疯狂Delphi
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.

    欢迎关注我,一起进步!扫描下方二维码即可加我

  • 相关阅读:
    MongoDb查询
    HBase学习笔记(四)—— 架构模型
    HBase学习笔记(一)——基础入门
    看完此文,妈妈还会担心你docker入不了门?
    Kafka学习笔记(四)—— API原理剖析
    集合框架学习之ArrayList源码分析
    集合类不安全之Set
    集合类不安全之ArrayList
    Java内存模型学习笔记(一)—— 基础
    An Illustrated Proof of the CAP Theorem
  • 原文地址:https://www.cnblogs.com/FKdelphi/p/14805387.html
Copyright © 2011-2022 走看看