Я новичок в Qt и делаю небольшое заявление. Я сделал это с QWizard и QWizardPages.
Я добавил 2 пользовательских кнопки в мастер, чтобы у него было 5 кнопок: ButA, ButB, Back, Next / Finish и Cancel.
ButA и ButB не должны появляться на всех страницах Wizard. Например:
WP0: только ButB
WP1: БутА и БутБ
Для этого у меня есть:
void WP0::initializePage()
{
wizard()->button(QWizard::CustomButton1)->setVisible(false);
}
При этом, когда приложение запускается, вы не можете видеть, но. НО, если вы перейдете на следующую страницу (где вы видите ButA и ButB), а затем нажмете кнопку BackButton, то вы увидите ButA в WP0.
Я полагаю, что затем вы нажимаете кнопку BackButton, там нет вызова WP0 :: initializePage (), поэтому мой вопрос: как или где я должен вызвать это wizard()->button(QWizard::CustomButton1)->setVisible(false);
никогда не видеть Бута на WP0? Или что мне делать?
Я не знаю, полностью ли я понимаю ваш вопрос. Ваше описание довольно сложное. Я думаю, что вы должны попробовать события кнопки. Это означает, что вы должны вызывать эту функцию в событии нажатия или что-то в этом роде, и лучше определить булеву переменную для true или false и вызвать ее по ссылке. Я думаю, что это должно решить вашу проблему.