Продолжение работы кода после закрытия QQuickView

Я делал приложение, основное окно вызывает с помощью сигнала второе окно. И мне надо, чтобы после закрытия второго окна, продолжал работать код. Но если я закрываю второе окно, то код не продолжается. Однако ,если я закрою основное окно, то код продолжится. Я пробовал

void back::changeValue(QString a)
{
QQuickView dialog;
dialog.setSource(QUrl(QStringLiteral("qrc:/Easy/NeedForPassword.qml")));
dialog.setWidth(538);
dialog.setMaximumWidth(538);
dialog.setMinimumWidth(538);
dialog.setHeight(308);
dialog.setMinimumHeight(308);
dialog.setMaximumHeight(308);
dialog.setFlags(Qt::Dialog);
dialog.setTitle("Easy");
dialog.show();

QEventLoop loop;
QObject::connect(&dialog, &QQuickView::statusChanged, [&loop](QQuickView::Status status) {
    if (status == QQuickView::Ready) {
        loop.quit();
    }
    });

loop.exec(); //каким то образом работа пошла после закрытия основного окна

text = "Pizza";

emit valueChanged();

Пробовал еще так:

QQuickView* view = new QQuickView();
    view->setSource(QUrl(QStringLiteral("qrc:/Easy/NeedForPassword.qml")));
    view->setWidth(538);
    view->setMaximumWidth(538);
    view->setMinimumWidth(538);
    view->setHeight(308);
    view->setMinimumHeight(308);
    view->setMaximumHeight(308);
    view->setFlags(Qt::Dialog);
    view->setTitle("Easy");
    view->show();

Итог, код продолжается при появление второго окна, что тоже не решение. Может кто подсказать, что я делаю не так? Использую Qt 6.6.0, QML.


Ответы (0 шт):