Создает копию Контрола OLE container.

OLEControl

Expand imageКомментарии

Рассматриваемый контрол (элемент управления) OLE container позволяет вам размещать и использовать в ваших Приложениях объекты OLE. Данные OLE-объекты могут быть: контролами ActiveX (файлы .ocx) или другие внедряемыми OLE-объектами, созданными во внешних Приложениях, таких как:  Microsoft Word или Microsoft Excel. В отличие от контролов ActiveX (файлы .ocx ), внедряемые OLE-объекты не содержат собственных, обрабатываемых Событий. Рассматриваемые контролы OLE container, в отличие от аналогичных контролов OLE Bound, не привязаны (не связаны) с конкретными полями типа General в таблицах Visual FoxPro.

Обратите Внимание, что внешние Контролы типа ActiveX, которые погружены в данный контейнер OLE container наследуют все необходимые Разработчику Свойства, События и Методы порождающего Контрола ActiveX.

Дополнительную информацию об использовании внешних Объектов типа OLE в приложениях Visual FoxPro смотрите в разделе: Доступ к Информационным Объектам и использование механизма OLE.

Expand imageПример

В представленном далее примере Программного Кода используется рассматриваемый Контрол OLE Container, который добавляется в Форму, при этом используются Свойства: OleClass и DocumentFile, которые описывают требуемый Сервер Автоматизации (Automation Server) Microsoft Excel и соответствующую Рабочую Книгу (Microsoft Excel worksheet), которую планируется Редактировать.

Свойство DocumentFile содержит имя файла "Book1.xls", размещенного в каталоге EXCEL, на диске C:\.  Данный пример программного кода не будет работать Должным образом, если заданы несуществующие (или ошибочные) параметры требуемых файлов; Внесите требуемые изменения для корректной работы программного кода.

* Метод DoVerb используется для активации Рабочей таблицы (WorkSheet) в условиях Режима Редактирования.

  CopyCode imageКопировать Код
frmMyForm = CREATEOBJECT('Form') && Create a Form
frmMyForm.Closable = .F. && Disable the window pop-up menu

frmMyForm.AddObject('cmdCommand1','cmdMyCmdBtn') && Add Command button
frmMyForm.AddObject("oleObject","oleExcelObject") && Add OLE object

frmMyForm.cmdCommand1.Visible=.T. && Display the "Quit" Command button

frmMyForm.oleObject.Visible=.T. && Display the OLE control
frmMyForm.oleObject.Height = 50 && OLE control height

frmMyForm.Show && Display the Form

frmMyForm.oleObject.DoVerb(-1) && -1 for Edit

READ EVENTS && Start event processing

DEFINE CLASS oleExcelObject as OLEControl
OleClass ="Excel.Sheet" && Server name
DocumentFile = "C:\EXCEL\BOOK1.XLS" && This file must exist
ENDDEFINE

DEFINE CLASS cmdMyCmdBtn AS CommandButton && Create Command button
Caption = '\<Quit' && Caption on the Command button
Cancel = .T. && Default Cancel Command button (Esc)
Left = 125 && Command button column
Top = 210 && Command button row
Height = 25 && Command button height

PROCEDURE Click
CLEAR EVENTS && Stop event processing, close form
ENDDEFINE

Expand imageСм. также