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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Вызов основного окна из диалогового окна  (Прочитано 3014 раз)
SpeedyWizard
Гость
« : Сентябрь 10, 2010, 17:10 »

Приветствую. Я пишу программу, которая работает с БД. В программе сначала появляется диалоговое окно, в котором запрашиваются авторизационные данные (логин, пароль, база). Я хочу, чтобы после этого появлялось основное окно. Общая структура программы такова:
1) класс AuthDialog (authdialog.cpp) - диалоговое окно авторизации;
2) класс ClientWindow (clientwindow.cpp)- основное окно;
3) main.cpp - запускалка.

Мой ход действий таков:
1) делаю connect между кнопкой loginButton и методом AuthDialog::connectDb, где connectDb - метод, производящий подключение к БД;
2) в методе AuthDialog::connectDb я хочу сделать нечто вроде w.show(), где w - инстанс класса ClientWindow.

Вся проблема заключается в том, что я не знаю, как вызвать w.show(), если w продекларирован в main и доступа из класса AuthDialog у меня к нему нет. Подскажите, пожалуйста, как это можно сделать.
« Последнее редактирование: Сентябрь 10, 2010, 17:12 от SpeedyWizard » Записан
Denjs
Гость
« Ответ #1 : Сентябрь 10, 2010, 17:51 »

void QWidget::show ()   - это слот. К нему можноп подключить сигнал.
Источник сигнала не знает кто и где (в принципе даже когда) будет получателем этого сигнла.

Объявили w в майне? ну отлично. Тут-же приконекте к нему сигнал от инстанса вашего AuthDialog.
 в AuthDialog::connectDb испустите ещё один сгнал - подключенный к show.
Записан
SpeedyWizard
Гость
« Ответ #2 : Сентябрь 10, 2010, 18:10 »

Большое спасибо, буду пробовать.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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