Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Lauffähiges C++ - Programm auf Widget einbetten



  • Hallo,
    ich möchte ein ausführbares C++ Programm z.B. in einem QMainWindow auf ein Widget legen.
    Oder irgendwas ähnliches. Z.B. MDI oder Stacket-Widget.
    Ist das möglich und wenn ja, wo muss ich da nachsehen?


  • Lifetime Qt Champion

    @Linex Du kannst hier im Forum suchen. Dies wurde schon einige male gefragt und es gab Lösungen dafür.



  • Danke für die Hilfe. Ich suche eigentlich erst und frage dann.
    Bis jetzt hab ich nichts gefunden.
    Mir könnten auch ein paar Stichwort für eine Suche helfen.


  • Moderators



  • Danke :-)



  • So. Nach langem Suchen bin ich nun soweit, dass er mir das Programm "extApp" startet.
    Sowohl in einem eigenene Fenster, als auch auf dem StackedWidget, das auf dem MainWindow liegt.

    1. Ich möchte kein eigenes Fenster von "extApp".
    2. Das Programm zeigt mir zwar die Felder und das Layout an (links), ich kann aber die App aber nur
      im 2. Fenster bedienen.
      Hat jemand einen Plan?

    Links MainWindow mit stackedWidget Rechts eigener Prozess von extApp
    QProcess.png

    void MainWindow::on_pushButton_3_clicked()
    {
    QProcess *p = new QProcess();
    p->start("extApp");

    char buff[500];
    buff[0]=0;
    p->waitForStarted();
    p->waitForReadyRead();
    p->read(buff,100);
    unsigned long long id1=atoll(buff);
    
    auto *window = QWindow::fromWinId((WId)id1);
    Q_ASSERT(window);
    
    QWidget *widget = QWidget::createWindowContainer(window);
    
    ui->stackedWidget->setCurrentIndex(1);
    ui->stackedWidget->setCurrentWidget(widget);
    

    }

    Mir würde auch schon genügen, wenn ich eine externe App am akt. MainWindow oder Widget
    andocken könnte.


Log in to reply