Основы офисного программирования и язык VBA


Изменение размеров диалогового окна


Из процедур обработки событий можно менять свойства не только отдельных элементов управления, но и всего окна. В качестве примера рассмотрим динамическое изменение его размеров. Ранее мы уже говорили о том, что, изменяя размеры окна, можно скрывать те или иные элементы управления. Сейчас продемонстрируем это на примере. На стадии проектирования разместим в окне элементы управления, которые при первоначальном открытии окна не должны быть видны, но должны появиться в процессе работы пользователя с этим окном. Пусть в форме Cutting есть командная кнопка "Получить данные", и поля ввода "Доходы" и "Расходы" При открытии окна поля ввода недоступны, что достигается "отсечением" нижней части формы в процедуре инициализации. Вот как выглядит обработчик события Initialize нашей формы:

Private Sub UserForm_Initialize() 'Отсечение нижней части формы Me.Height = 90 End Sub

Так выглядит форма при ее открытии:

Усеченная форма в момент ее открытия

Рис. 12.19.  Усеченная форма в момент ее открытия

После щелчка командной кнопки обработчик события Click восстанавливает размер, заданный при проектировании формы. Он задает также и значения скрытых ранее полей:

Private Sub CommandButton1_Click() With Me 'Установить нормальную высоту формы .Height = 200 'Задать значения ранее не видимых полей .Доходы = 1570 .Расходы = 1500 End With

End Sub

А так выглядит эта же форма после щелчка командной кнопки:

Форма Cutting со скрытыми ранее полями

Рис. 12.20.  Форма Cutting со скрытыми ранее полями




Начало  Назад  Вперед



Книжный магазин