Недавно добавленные исходники |
|
• DeLiKaTeS Tetris (Тетрис) 3 455 • TDictionary Custom Sort 5 651 • Fast Watermark Sources 5 416 • 3D Designer 7 875 • Sik Screen Capture 5 712 • Patch Maker 6 204 • Айболит (remote control) 6 212 • ListBox Drag & Drop 5 084 • Доска для игры Реверси 94 133 • Графические эффекты 6 380 • Рисование по маске 5 437 • Перетаскивание изображений 4 590 • Canvas Drawing 4 978 • Рисование Луны 4 708 • Поворот изображения 4 254 • Рисование стержней 2 997 • Paint on Shape 2 226 • Генератор кроссвордов 3 080 • Головоломка Paletto 2 421 • Теорема Монжа об окружностях 3 206 |
|
Каталог исходников |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
|||||||||||
|
||||||||||||
![]() |
СТАТЬИ
. : Первые шаги в автоматизации OpenOffice.Calc
|
Как мне кажется, комментарии здесь излишни, отмечу только, что 'com.sun.star.ServiceManager' и есть программный идентификатор Service Manager'а. 2.2 Отключение от сервера автоматизации Рассмотрим теперь функцию Disconnect. Она еще проще (листинг 2).
Комментарии излишни. Теперь можно работать с документами, только для начала надо создать или открыть существующий. 2.3 Создание нового документа Для создания документа используем функцию CreateDocument. Она приведена на листинге 3.
Рассмотрим эту функцию подробнее. Переменная Desktop – ни что иное, как экземпляр OpenOffice. Получив этот экземпляр, мы можем создавать документ. Для этого используется метод LoadComponentFromURL. Первым параметр – имя файла в URL-формате. Здесь можно указать существующий файл (тогда мы откроем уже существующий файл). Хотя файл, заданный нашим параметром тоже существует, только это шаблон пустого файла. Сразу отметим, что это файл Writer'а. Для открытия файла, например, Calc, нам надо первым параметром передать: 'private:factory/scalc'. Отличия на этом в открытии файлов разных приложений заканчиваются. Второй параметр означает, что документ создается в новом окне. Третий параметр – флаг вызова. Далее – опции открытия. Рассмотрим их позже. 2.4 Открытие документа Теперь функция открытия документа. Сама функция приведена на листинге 4.
Отличия этой функции от предыдущей только в опциях открытия. Для этого мы их помещаем в массив VariantArray. В частности, главное – что мы ставим фильтр на открытие: MS Word 97. То есть мы работаем с файлами MS Office. Отмечу, что для Calc'a мы бы написали MS Excel 97. Небольшое отступление. Возникает вопрос: почему мы открываем файлы MS Office? Ответ прост. Пользователь не зависит от ПО, установленного у него на компьютере, ведь легко представить себе ситуацию, когда на одном компьютере установлен OpenOffice, а на другом MS Office. Поэтому работа с файлами одного формата решит проблему взаимодействия пользователей, у которых стоят различные «офисы». Более того, конечный пользователь даже не заметит разницы: оболочки очень похожи, функции выполняются одинаковые. Как мне кажется, это является важным условием при переходе с MS Office на OpenOffice. В этой функции используется функция MakePropertyValue. Листинг 5.
Функция эта вспомогательная, она просто ставить заданное значение в соответствие заданному свойству. И возвращает пару свойство-значение. Выделили мы ее потому, что она будет необходима в ряде других мест. 2.5 Процедуры "Сохранить документ" и "Сохранить как" Теперь рассмотрим сохранение документа в формате MS Word (или Excel). Процедура сохранения показана на листинге 6.
Как мы видим, разница только в функции StoreToUrl. Опять же отмечу, что для документа Calc мы могли бы написать MS Excel 97. Рассмотрим еще одну процедуру SaveAs. Эта процедура просто сохраняет документ под новым именем (листинг 7).
В данном случае мы сохраняем текущий документ под именем FileName, если такой документ уже существует, то мы его перезаписываем (свойство Overwrite = True). 2.6 Закрытие документа Следующая процедура – закрытие текущего документа. Она тоже проста и не требует никаких комментариев (листинг 8).
2.7 Печать документа Последняя процедура в этом разделе – процедура вывода на печать текущего документа (листинг 9).
В данном случае мы передаем на печать необходимое количество копий (iNumCopies). Для меня именно это было критично, хотя есть и другие параметры печати, которые можно задавать точно таким же образом. Например, свойство Pages:string - определяет страницы для печати, формат ввода такой: ' 1-9,11,15-20'; или свойство FileName:string – определяет файл, в который производится печать. На этом мы закончим рассмотрение основных функций, необходимых для работы с OpenOffice и перейдем к работе непосредственно с документами.
Дата: 14.05.2007, Автор: Васильков Ю. В. |
|||||||||
© 2004-2025 "DS"
Соглашение пользователя / Реклама / Карта сайта Created by