указан парент mainwindow, который должен почистить за собой когда ему дают close?
таймер дает возможность полсностью отработать конструктору главного окна. и перейти к обработке эвентов (запущен eventloop).
перврое событие будет от таймера на закрытие и все закроется.
но тут вторая мысль - зачем вообще грузить главное окно (а оно может быть большое, с переключением видеорежимов[ вдруг ты игрулю пишешь]), если пользователь не согласен с условиями лицензии?
переносим создание окна лицензии в main.cpp, и там решаем грузить ли дальше главное окно.
попутно надо решить, как сохранить информацию о принятии лицензии:
диалог лицензии должен уметь работать с настройками приложения, чтобы каждый раз не показывать лицензию при старте.
но опять затыка, может возникнуть если принято решение, что только главное окно имеет доступ к настройкам. Тогда вернуться с варианту с таймером и полной отработкой конструктора главного окна.
Теперь понял. Да, тогда лучше сделать это все в main до открытия окна, а-то как-то костыльно выходят первые два варианта(два close или таймер). Все что потребуется - вынести ридЛицензиСеттингс туда же в маин, это ничего. Благодарю Вас за помощь и объяснение!
Обсуждают сегодня