Урок № 6 - Создание мастера диалогового окна
Сохраните Вашу работу и запустите приложение на исполнение. Появится диалоговое окно мастера.
Как видите в диалоговом окне "Окно 1" недоступна кнопка Back (Назад), в диалоговом окне "Окно 3" кнопка Next (Далее), а в диалоговом окне "Окно 2" доступны обе кнопки.
Доступность этих кнопок определяется функцией CPropertySheet::SetWizardButtons, которая обычно вызывается из функции CPropertySheet::OnSetActive. Функция SetWizardButtons определяет функцию и внешний вид кнопок диалогового окна мастера. В параметрами этой функции является набор флагов, объединенных функцией логического ИЛИ. Этот набор состоит из следующих флагов:
PSWIZB_BACK - отображает и делает доступной кнопку Back.
PSWIZB_NEXT - отображает и делает доступной кнопку Next.
PSWIZB_FINISH - отображает и делает доступной кнопку Finish.
PSWIZB_DISABLEFINISH - делает недоступной кнопку Finish.
Флаги PSWIZB_NEXT и PSWIZB_FINISH являются несовместимыми, т.к. относятся к одной и той же физической кнопке. Поэтому окно может содержать или кнопку Next (Далее) или кнопку Finish (Готово), но не обе сразу.
Но мастер AppWizard, с помощью маленьких хитростей, содержит и кнопку Next (Далее) и кнопку Finish (Готово).
Флаг PSWIZB_DISABLEFINISH может появиться только в комбинации с флагом PSWIZB_FINISH.