Мы рассмотрели стандартные элементы управления, которые изначально помещены на панель ToolBoxи доступны для размещения в формах. Однако возможности форм VBA этим не ограничиваются. В вашем распоряжении — сотни и тысячи элементов управления, встроенных в Windows, в другие продукты или поставляемые отдельно (в том числе третьими фирмами). Для того чтобы можно было разместить их на форме, щелкните правой кнопкой мыши по пустому пространству в ToolBox,выберите пункт контекстного меню Additional Controls,а затем в списке выберите нужный элемент. Правда, при использовании нестандартных элементов управления необходимо помнить, что при переносе программы (файла Office) на другой компьютер вам потребуется обеспечить на нем наличие необходимых библиотек.
Очень часто в программах используются дополнительные элементы управления Internet Explorer, Acrobat Reader, Календарь, проигрыватели аудио- и видеофайлов и т. п. Например, чтобы разместить на форме элемент управления Microsoft Web Browser (в русифицированной версии Windows он называется Обозреватель веб-страниц (Microsoft)),который представляет окно Internet Explorer, нужно выполнить следующие действия:
r щелкнуть правой кнопкой мыши по пустому пространству в окне Toolbox и в контекстном меню выбрать Additional Controls;
r в открывшемся списке выбрать Microsoft Web Browser (или Обозреватель веб-страниц (Microsoft));
r изменившимся курсором мыши очертить на форме ту область, которую будет занимать этот элемент управления.
Далее нужно позаботиться о программном коде для этого элемента управления. Созданный нами на форме элемент управления по умолчанию будет называться WebBrowser1. Можно выбрать любое из доступных событий этого элемента управления, а можно использовать этот элемент управления и в событиях других объектов. Например, если нам нужно, чтобы при открытии формы в окне Internet Explorer на ней открывалась определенная страница, можно воспользоваться событием Initialize для формы. Соответствующий код может быть таким:
Private Sub UserForm_Initialize()
WebBrowser1.Navigate "http://www.Asklt.ru"
End Sub
Преимущества использования этого элемента управления очевидны — вы можете расширить функциональность своей формы за счет использования Web-страниц (например, с формами HTML). Internet Explorer обычно установлен на любом компьютере под управлением Windows и поэтому с этим элементом управления не возникает никаких проблем при переносе программы на другой компьютер. Справку по этому элементу управления придется смотреть в MSDN.
Еще один часто используемый элемент управления, который есть практически на всех компьютерах— Сalendar (календарь) (рис. 5.11). В зависимости от версии вашей операционной системы и установленного программного обеспечения он может называться по-разному, у меня на компьютере он называется Calendar Control 8.0.При помощи этого элемента управления пользователю будет очень удобно выбирать нужную дату.
Рис. 5.11. Элемент управления Calendar и надпись, дублирующая значение, выбранное пользователем в Calendar
Главное свойство этого элемента управления — Value, т. е. та дата, которая выбрана пользователем. Остальные свойства предназначены для отображения внешнего вида календаря.
В Excel на панели ToolBoxимеется еще один специфический элемент управления — RefEdit (в списке Additional Controlsон называется как RefEditCtrl).Он похож на текстовое поле с кнопкой справа. При нажатии на эту кнопку форма, на которой размещен этот элемент управления, "спрячется", а пользователю будет предоставлена возможность выбрать одну ячейку или диапазон ячеек Excel. После того как пользователь завершит выбор, он опять вернется в окно формы, а в RefEdit будет помещена информация об адресе выбранного диапазона. Такой же адрес, конечно, можно вводить и вручную. Главное свойство этого элемента управления — Value.
Большое количество дополнительных элементов управления предусмотрено для форм Access. Они являются специфическими для Access, и про них будет рассказано в гл. 12.