ActiveX
Наиболее мощное свойство элемента управления Script, позволяющее использовать его для написания сценариев приложения — это его способность манипулировать элементами управления ActiveX. Из примера, приведенного в предыдущем параграфе, видно, как создавать объектные переменные для доступа к OLE-серверу. Если приложение использует классы, то можно получить к ним доступ посредством элемента управления VBScript. Необходимо только создать экземпляр класса (или нескольких классов) и сохранить его в элементе управления Script. После этого свойства и методы будут доступны с помощью объектной переменной, как обычные команды VBScript.
С помощью метода AddObject
можно добавить объект к элементу управления Script.
ScriptControll.AddObject Name, Object, members
Первый аргумент — Name —
это имя для доступа к классу в сценарии. Это переменная типа String. Второй аргумент - Object - действительное имя класса. Допустим, приложение предоставляет класс DisplayClass. Для добавления этого класса к элементу управления Script надо создать объектную переменную
Private Display As New DisplayClass
и воспользоваться следующим оператором
ScriptControll.AddObject "Output", Display
После выполнения этого оператора (обычно он помещается в событие Load формы) сценарий получает доступ к членам класса DisplayClass через объектную переменную Output. Если DisplayClass имеет метод Show, то к этому методу может обращаться любой сценарий.
Output.Show "some message"
' (некоторое сообщение)
(Метод Show выводит сообщение в нижний элемент управления TextBox формы.) Последний (необязательный) аргумент - members — это логическое значение, определяющее, будут ли доступны члены класса через объектную переменную. Если установить значение этого аргумента в True, то члены класса будут доступны по имени, как функции VBScnpt. Если добавить класс DisplayClass в элемент управления Script оператором
ScriptControll.AddOb]ect "Output", Display, True
то к методу Show можно обратиться из сценария без указания переменной имени объекта