2016-09-02 2 views
0

Я новичок в Qt. Я создал небольшое приложение, и я создал вторую страницу help.cpp. На MainWindow.cpp У меня есть кнопка, которая переключается на страницу help.cpp.Qt: кнопка - возврат с "help.cpp" на "mainwindow.cpp"

Функция, которая переключается на странице "помощь":

void MainWindow::on_box1button_clicked() 
{ 
    helpwindow = new help(this); 
    helpwindow->show(); 
} 

Этот код работает правильно.

На странице «Помощь» у меня есть QButton, который вернется к mainwindow.cpp. Как я могу закодировать эту кнопку, чтобы сделать это?

ответ

0

Если ваше намерение «переключением» скрывает одно окно и показывает другое, вы можете просто передать ссылку главного окна в окно справки, а там, где вы хотите вернуться назад, вы можете скрыть/закрыть себя и показать главное окно.

MainWindow (этот код отлично)

helpwindow = new help(this); 
helpwindow->show(); 

HelpWindow

Если вы хотите, чтобы вернуться в главное окно, вы можете сделать это:

// Hide the HelpWindow itself 
// or this->close() 
this->hide() 

// Show the MainWindow (i.e. the parent window) 
QWidget *parent = this->parentWidget(); 
parent->show(); 
+0

вы можете получить указатель на родительское окно, используя что-то вроде 'qobject_cast (parent())' – Mike

+0

@Mike О, вы совершенно правы, я просто забыл об этом! –

+0

Работает идеально. Еще одна вещь: как я могу настроить «mainWinRef»? this-> hide() легко, но что мне нужно сделать, чтобы сделать, например, mainw-> show()? – allin0n3

0

Поскольку вы создаете новую помощь (это); на mainwindow лучше закрыть окно помощи

Используйте this-> close();

Смежные вопросы