Две кнопки в Qt Gui - PullRequest
       22

Две кнопки в Qt Gui

0 голосов
/ 25 июня 2018

Я написал программу с различными функциями в Qt.Теперь я хочу сделать Gui.Например, у меня есть две кнопки, button1 и button2.Я открываю приложение, сначала вижу button1.Затем я нажимаю кнопку 1, она выполняет свою функцию (например, «Пуск») и исчезает.Затем должна появиться кнопка 2, и когда я нажимаю кнопку 2, она выполняет свою функцию (например, «остановка») и исчезает, а кнопка 1 снова появляется, чтобы нажать ее, чтобы выполнить запуск.Теперь у меня вопрос, как это легко решить?

void gui::on_pushButton_clicked() 
{
    //execute start, switch to be button2
}

void gui::on_pushButton_2_clicked() 
{
     //execute stop, switch to be button 1
}

1 Ответ

0 голосов
/ 25 июня 2018

Следующее, кажется, самое простое решение, но немного громоздкое, если вы хотите добавить больше кнопок. В этом случае вы можете захотеть сохранить их в списке и повторить список.

void gui::on_pushButton_clicked() 
{
    //execute start, switch to be button2

    ui->pushButton->hide();
    ui->pushButton_2->show();
} 

void gui::on_pushButton_2_clicked() 
{
     //execute stop, switch to be button 1

    ui->pushButton->show();
    ui->pushButton_2->hide();
}

Если в дальнейшем вы решите внедрить еще больше логики, вам следует рассмотреть возможность использования QStateMachine и установки определенных кнопок видимыми или скрытыми при входе или выходе из определенных состояний.

...