@mukhinkv

Как показать окно авторизации на c++ до основного окна?

Необходимо показать окно авторизации до основного окна. И если в окне нажать "Отмена" либо ввести неправильный пароль, приложение завершалось.
Как делал: создал класс приложения и класс для авторизации. В конструкторе класса авторизации wxPanel *panel = new wxPanel(this, wxID_ANY);

wxButton *button = new wxButton(panel, wxID_EXIT, wxT("Quit"),
wxPoint(20, 20));

wxButton *buttonOk = new wxButton(panel, wxID_OK, wxT("Ok"), wxPoint(20,50));

Connect(wxID_OK, wxEVT_COMMAND_BUTTON_CLICKED,
wxCommandEventHandler(AuthFrame::OnOk));
Connect(wxID_EXIT, wxEVT_COMMAND_BUTTON_CLICKED,
wxCommandEventHandler(AuthFrame::OnQuit));

Из класса приложения создаю экземпляр класса авторизации AuthFrame. В итоге появляется окно основного приложения и окно авторизации. Как мне сделать так, чтобы показывалось только окно авторизации и результат передать в класс основного приложения?

Все это делается на ubuntu 12.04 с использованием с++ и wxWidgets.
  • Вопрос задан
  • 3522 просмотра
Пригласить эксперта
Ответы на вопрос 1
@tugo
Вот код на Qt который делает то, что вам надо:
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    AuthFrame askPassword;
    if (askPassword.exec() == QDialog::Rejected)
    {
        return 0;
    }
    MainWindow w;
    app.exec();
}


Если нужно что-то конкретное передать из AuthFrame в основное приложение, то делаете так:
if (askPassword.exec() == QDialog::Rejected)
    {
        return 0;
    }
    int result = askPassword.result();
    MainWindow w(result);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы