Практическая работа 41. OLE
А. Элементарная операция OLE Последовательность действий: · Создать на форме элемент управления OLE для создания, например, связанного объекта, · создать соответствующий файл, например, A:\ole1.xls (см. код, данный ниже), · ввести код, данный ниже, · стартовать проект, сделать щелчок на форме, наблюдать результат. Private Sub Form_Click()OLE1.Class = "Worksheet" ' приложение ExcelOLE1.SourceDoc = "A:\ole1.xls" ' имя файла' использовать указанный блок данныхOLE1.SourceItem = "A1A3:B1B3" OLE1.Action = 1 ' создать связанный объектEnd SubВ. OLE Рассматривается загрузка объектов (см. процедуру Form_Load () в OLE-контейнер и реализация (по желанию пользователя) связывания/внедрения (см. процедуру Public Sub LinkEmb(FileName As String, Embed As Boolean)). Последовательность действий: 1. создать объекты: текстовый файл (приложение Word), таблицу (приложение Excel), базу данных (приложение Access), рисунок (приложение Paint), 2. создать на форме элемент управления OLE (Name = ole1), два переключателя (Name = opt1 и opt2 соответственно, Caption = Link и Embed cоответственно), командную кнопку (Name = cmd1, Caption = Load Object), поле списка (Name = lst), табл. 6.1. 3. ввести код данный ниже, стартовать проект, 4. маркировать в поле списка lst, элемент, например, "Docum.Word", сделать щелчок на требуемом переключателе (Link или Embedding), затем сделать щелчок на командной кнопке "Load Object". В поле элемента OLE выводится соответствующий файл, 5. сделать двойной щелчок в поле OLE на введeнном объекте. В зависимости от того, какой переключатель использован (Link или Embed), вставленный объект выводится или в приложении Word для редактирования, или появляется возможность редактировать его средствами того приложения, в котором он находится. В случае Link внесeнные (пользователем) изменения остаются в исходном файле. Это можно проверить, загрузив файл в приложение Word. ' создать список объектов для загрузки в OLE-контейнерPrivate Sub Form_Load()With lst.AddItem ("Docum.Word").AddItem ("Table.Excel").AddItem ("Picture.Paint").AddItem ("Database.Access")End WithEnd Sub' выбор загружаемого объекта (маркировать его в списке, см.:' Select Case lst.ListIndex) и определение режима ' связывание/внедрение с учётом состояния переключателей Private Sub cmd1_Click()Select Case lst.ListIndexCase 0: LinkEmb "A:\nin.doc", opt1.ValueCase 1: LinkEmb "A:\nin.xls", opt1.ValueCase 2: LinkEmb "A:\nin.bmp", opt1.ValueCase 3: LinkEmb "A:\nin.mdb", opt1.ValueEnd SelectEnd Sub' в зависимости от значений переданных аргументов'реализовать связь/внедрениеPublic Sub LinkEmb(FileName As String, Embed As Boolean)If Embed Thenole1.CreateEmbed FileNameElseole1.CreateLink FileNameEnd IfEnd Sub
|