Название: Сохранение настроек при закрытии программы Отправлено: troorl от Июнь 06, 2007, 15:33 Есть главное окно. В деструктор записываю сохранение позиции и размера этого окна. При выходе они по идее должны сохраняться (qApp->quit()). Но не сохраняются.
Но если в конце деструктора прописать что-то типа Код: QMessageBox::information(0, "", ''); то настройки успевают сохраниться. Как это правильно реализовать? Название: Сохранение настроек при закрытии программы Отправлено: goer от Июнь 06, 2007, 15:36 попробуй поставить qApp->processEvents() после функции сохранения, если не получится - сделай паузу при помощи QEventLoop. Кажется в теме про QString(та которая на 4 старницы, чуть ниже) было как это сделать.
Название: Сохранение настроек при закрытии программы Отправлено: troorl от Июнь 06, 2007, 15:48 Спасибо, qApp->processEvents() вроде помогло.
Название: Re: Сохранение настроек при закрытии программы Отправлено: pastor от Июнь 06, 2007, 16:40 Цитата: "troorl" Как это правильно реализовать? имхо в деструкторе сохранять настройки это не совсем корректное решение. Объект начал уже разрушаться, сосотояние объектов может быть неопределённым. Я наталкнулся на такой косяк и переделал по другому: Код: void MainWindow::closeEvent ( QCloseEvent * evnt ) Название: Re: Сохранение настроек при закрытии программы Отправлено: Sergey B. от Июнь 06, 2007, 17:39 Цитата: "pastor" Цитата: "troorl" Как это правильно реализовать? имхо в деструкторе сохранять настройки это не совсем корректное решение. Объект начал уже разрушаться, сосотояние объектов может быть неопределённым. Я наталкнулся на такой косяк и переделал по другому: Код: void MainWindow::closeEvent ( QCloseEvent * evnt ) именно так и надо, т.к. для того события в ней и созданы (сигнал-слот) |