Форум программистов, компьютерный форум, киберфорум
QML
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
6 / 2 / 4
Регистрация: 24.01.2017
Сообщений: 124
1

Приложение не закрывается с первого раза

19.10.2020, 10:26. Просмотров 1827. Ответов 6
Метки нет (Все метки)

Подключаю к QML класс QFileSystemModel:

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
int main(int argc, char *argv[])
{
    QGuiApplication app(argc, argv);
 
    QQmlApplicationEngine engine;
    qmlRegisterUncreatableType<QFileSystemModel>("jsoft.pfm", 1, 0,
                                                "FileSystemModel", "Cannot create a FileSystemModel instance.");
 
    QFileSystemModel *fsm = new QFileSystemModel(&engine);
    fsm->setRootPath(QDir::homePath());
    //fsm->setResolveSymlinks(true);
    engine.rootContext()->setContextProperty("fileSystemModel", fsm);
    engine.rootContext()->setContextProperty("rootPathIndex", fsm->index(fsm->rootPath()));
    engine.load(QUrl(QStringLiteral("qrc:///main.qml")));
    if (engine.rootObjects().isEmpty())
        return -1;
 
    const QUrl url(QStringLiteral("qrc:/main.qml"));
    QObject::connect(&engine, &QQmlApplicationEngine::objectCreated,
                     &app, [url](QObject *obj, const QUrl &objUrl) {
        if (!obj && url == objUrl)
            QCoreApplication::exit(-1);
    }, Qt::QueuedConnection);
    engine.load(url);
 
    return app.exec();
}
И почему-то приходится дважды закрывать приложение.
Без подключения класса всё ок.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.10.2020, 10:26
Ответы с готовыми решениями:

Приложение закрывается только со второго раза
Искал в гугле много инфы, но получается когда запускаю приложение на устройстве то при нажатии...

Приложение закрывается
Есть код такого вида: procedure TForm1.Timer1Timer(Sender: TObject); begin inc(i); if i =...

Не закрывается приложение
Господа, доброй ночи:) Столкнулся с таким интересным случаем: программа имеет две формы Form1...

Закрывается приложение
Столкнулся с неприятной ситуацией. wxDev закрывается при создании нового или открытии ранее...

6
6 / 2 / 4
Регистрация: 24.01.2017
Сообщений: 124
20.10.2020, 20:47  [ТС] 2
Понял, что проблема в том, что при одном запуске почему-то запускаются сразу два экземпляра exe.
Из-за чего такое может быть? Вроде все сделал как в исходном примере.

И ещё. Как собрать standalone exe? Погуглил, попробовал - не получилось.
0
Модератор
Эксперт .NET
5303 / 4098 / 1182
Регистрация: 12.10.2013
Сообщений: 11,909
Записей в блоге: 2
20.10.2020, 20:50 3
Цитата Сообщение от MatrixKiller Посмотреть сообщение
Из-за чего такое может быть?
Судя по вашему коды, у вас два раза вызывается QQmlApplicationEngine ::load() (строки 14 и 24). Может из-за этого?
Цитата Сообщение от MatrixKiller Посмотреть сообщение
Как собрать standalone exe?
Да вроде как обычно, собрал и все))
0
6 / 2 / 4
Регистрация: 24.01.2017
Сообщений: 124
20.10.2020, 21:59  [ТС] 4
Судя по вашему коды, у вас два раза вызывается QQmlApplicationEngine ::load() (строки 14 и 24). Может из-за этого?
Точно. Вот лох!!! Спасибо огромное!

Да вроде как обычно, собрал и все))
Не, я имею в виду чтобы оно могло запуститься на любом компе.
Нужно Setup воять. Ты чем пользуешься для этого?
0
Модератор
Эксперт .NET
5303 / 4098 / 1182
Регистрация: 12.10.2013
Сообщений: 11,909
Записей в блоге: 2
20.10.2020, 22:00 5
Цитата Сообщение от MatrixKiller Посмотреть сообщение
Не, я имею в виду чтобы оно могло запуститься на любом компе.
Нужно Setup воять. Ты чем пользуешься для этого?
Я не пользуюсь инсталляторами. Через LibraryCollector собираю все что нужно для работы в архив и раздаю пользователям.
0
Don't worry, be happy
16958 / 9839 / 1895
Регистрация: 27.09.2012
Сообщений: 24,393
Записей в блоге: 2
20.10.2020, 22:29 6
Есть еще windeployqt, если речь о windows.
0
6 / 2 / 4
Регистрация: 24.01.2017
Сообщений: 124
20.10.2020, 23:49  [ТС] 7
Спасибо!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.10.2020, 23:49

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Закрывается приложение
После установки таймера закрывается приложение, не пойму в чем причина #include &lt;windows.h&gt;...

Закрывается приложение
Всем привет! Пытаюсь обучиться питону и появилась следующая проблема: смотрю гайд по простейшему...

Закрывается консольное приложение
Закрывается консольное приложение. При создании имеет стандартный вид program project1; ...

Консольное приложение закрывается
Добрый день решил создать консольное предложение но дело в том что при вводе любых сиволов и...

Закрывается консольное приложение
независимо вводил ли я Добавлено через 14 секунд getch(); cin.get(); system(&quot;pause&quot;); return...

После ввода первого значения закрывается программа
У меня есть задача где нужно создать текстовый файл и внести туда информацию о мотоциклах Я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.