Где управлять кнопкой QWizard?

Я использую QT, и я использую объект QWizard, который содержит несколько страниц. когда дело доходит до определенной страницы я хочу скрыть кнопку "Next" сначала, и показывает его после того, как пользователь делает что-то (такие как нажатие на переключатель...)

Я хочу сделать, некоторые настраивают управление мастера, когда эта определенная страница обнаруживается. вопрос, я знаю, как скрыть кнопку, но я не знаю, какую функцию я должен использовать. Я судил конструктора QWizardPage, функцию initializePage, "выставочная" функция, но все они функционируют, не работала.

Если я поместил кнопочное управление в конструктора страницы мастера, программа откажет, так как объект мастера еще не там.

Если я поместил его в функцию initializePage, некоторая функция QWizard сбросит кнопки после функции initializePage, и вся специализированная установка будет уведенный.

И выставочная функция кажется, не может быть перезаписан.

Я действительно не могу выяснить, какая функция применима. Есть ли какая-либо функция как OnSetActive в MFC или Загрузка в JAVA?? Который назовут, когда страница будет идти в шоу?

9
задан Claire Huang 3 August 2010 в 23:23
поделиться

1 ответ

Лучшее решение, вероятно, обеспечивается использованием QWizardPage :: registerField . Это позволяет вам определять обязательные поля / переключатели / и т. Д. и кнопки «Далее» и / или «Готово» в вашем мастере доступны только тогда, когда все обязательные поля заполнены / отмечены.

См. http://doc.trolltech.com/4.6/dialogs-licensewizard.html для примера, в котором используется эта функция.

РЕДАКТИРОВАТЬ: QWizard :: button обеспечивает доступ к кнопкам в мастере. Вы пробовали что-то вроде myWizard-> button (QWizard :: NextButton) -> setEnabled (false) ?

9
ответ дан 4 December 2019 в 15:11
поделиться
Другие вопросы по тегам:

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