Russian Qt Forum
Сентябрь 30, 2024, 20:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QDialog непонятное поведение  (Прочитано 2449 раз)
fuCtor
Гость
« : Март 01, 2009, 12:28 »

Создал свое диалоговое окно, для введения настроек.
Добавил переопределил accept():
Код
C++ (Qt)
QSettings settings;
settings.setValue("host",host->text()),
settings.setValue("port",port->text().toInt()),
settings.setValue("path",path->text());
settings.setValue("updateInterval",interval->text().toInt());
settings.setValue("first_launch",false);
QDialog::accept();
 

Добавил менюшку которую связал со своим слотом:
Код
C++ (Qt)
//create settings item
QAction * settings = menu->addAction(QIcon(":/img/gear.png"),tr("Settings"));
connect(settings,SIGNAL(triggered(bool)),
this, SLOT(openSettings(bool)));
 
Код
C++ (Qt)
void TrayMenu::openSettings(bool){
SettingsDialog * form = new SettingsDialog();
if(form->exec() == QDialog::Accepted)
QApplication::exit();
delete form;
}
 

И почему-то, при нажатии налюбую кнопку в диалоге (OK, Cancel) приложение закрывается. Убирал из кода строку с exit(), все равно закрывается. Что не так делаю?Грустный
Записан
Dendy
Гость
« Ответ #1 : Март 01, 2009, 12:37 »

Наверное приложение думает что должно закрыться при закрытии последнего (единственого) окна. Поставьте QApplication::void setQuitOnLastWindowClosed(false).
Записан
fuCtor
Гость
« Ответ #2 : Март 01, 2009, 12:41 »

Спасибо  Улыбающийся помогло.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.133 секунд. Запросов: 21.