Вы можете создавать Объекты COM, используемые в других Пиложениях; для этого используется Механизм ActiveX Template Library, который поддерживается системой Microsoft® Visual C++.
Вы можете создать Контролы Microsoft ActiveX, специфичные для системы Visual FoxPro, которые являются совместимыми с обычными системными Контролами. При использовании Компилятора C++ создаются общие Структуры Контролов ActiveX, как и при использовании системы Microsoft Visual Basic Control Creation Edition.
В последующих пунктах рассматриваются Вопросы и детальные Шаги по созданию Контролов ActiveX при помощи системы Microsoft Visual C++ 6.0, которые могут быть использованы в Visual FoxPro.
Для создания Проекта будущего Контрола (объекта) ActiveX
-
Запустите Систему Microsoft Visual C++.
-
Из системного меню File, выберите пункт New.
-
В активированном диалоговом боксе New, выберите подраздел Project Workspace.
-
В открывшемся диалоговом боксе New Project Workspace, задайте имя Нового Проекта.
-
В Списке Type, выберите пункт OLE ControlWizard.
-
Далее: кнопка Create, и следуйте инструкциям, предлагаемым данным Мастером.
После завершения работы рассматриваемого Мастера, вы можете сразу использовать созданный объект ActiveX. Однако, вам нужно также определить необходимые Свойства и Методы данного Контрола.
Для добавления Свойств и МетодовTo в Контрол ActiveX
-
Из системного меню View, выберите пункт ClassWizard.
-
Активируйте закладку OLEAutomation.
-
Выберите кнопку Add Method или Add Property (добавить, определить Свойство или Метод).
-
Определите Имя Элемента (свойства/метода), параметры и другую необходимую информацию, в конце нажмите кнопку OK.
-
Нажмите кнопку Edit Code - для активации окна Редактора, в котором введите требуемых программный Код для создаваемого Элемента.
Например, для создания свойства Version,
которое определяет версию создаваемого файла Контрола (.ocx), которая
является целым числом (к примеру = 101), вам требуется определить
указанное Свойство: определить его Тип long
, и ввести следующий Код:
Копировать Код | |
---|---|
#define VERSION 101 |
В силу того, что, обычно номер Версии является Свойством с характеристикой "только-чтение", вам не потребуется создавать Метод-функцию SetVersion( ).