Недавно добавленные исходники • DeLiKaTeS Tetris (Тетрис) 153 • TDictionary Custom Sort 3 334 • Fast Watermark Sources 3 085 • 3D Designer 4 844 • Sik Screen Capture 3 337 • Patch Maker 3 550 • Айболит (remote control) 3 655 • ListBox Drag & Drop 3 012 • Доска для игры Реверси 81 675 • Графические эффекты 3 939 • Рисование по маске 3 244 • Перетаскивание изображений 2 626 • Canvas Drawing 2 748 • Рисование Луны 2 576 • Поворот изображения 2 185 • Рисование стержней 2 168 • Paint on Shape 1 568 • Генератор кроссвордов 2 233 • Головоломка Paletto 1 767 • Теорема Монжа об окружностях 2 227 Архив исходников
Базы данных
Графика & Мультимедиа
Сети & Интернет
Система
Разное
|
|||||
|
|||||
СТАТЬИ
. : Первые шаги в автоматизации OpenOffice.Calc
|
Рассмотрим эту процедуру подробнее. Прежде чем начать работу с текстом, нам необходимо получить указатель на текст, как на объект документа. Для чего мы используем TextPointer := Document.GetText. Таким образом, схема взаимодействия будет следующей: ServiceManager -> Desktop -> Document -> TextPointer. После этого нам надо создать курсор, что делается методом CreateTextCursor. Только после этого мы уже можем непосредственно вставить строку в начало документа: TextPointer.InsertString(CursorPointer, Text, false). В качестве параметров для этого метода мы передаем созданный курсор, текст для вставки, а также параметр absorb: boolean. Если этот параметр равен False, то текст будет вставляться последовательно, в этом случае TextPointer будет указывать на весть текст, включая последнюю вставленную строку; если же True – тогда только на последнюю вставленную строку, причем, строка, на которую он указывал раньше будет удалена. Метод InsertControlCharacter вставляет символ завершения строки. Второй аргумент ("0") - константа, которая обозначает этот символ (com::sun::star::text::ControlCharacter::PARAGRAPH_BREAK). Теперь разберемся с форматированием текста. Чтобы поменять размер шрифта или его цвет, нужно установить соответствующее свойство курсора. Например, для установки 20 шрифта это будет выглядеть так: CursorPointer.SetPropertyValue('CharHeight', 20); Можно поменять цвет шрифта: CursorPointer.SetPropertyValue('CharColor', 500); В этом случае в качестве второго параметра передается цвет в формате RGB. CursorPointer.SetPropertyValue('CharShadowed', True); Можно сделать текст подчеркнутым, курсивным и жирным. Это будет выглядеть так: CursorPointer.setPropertyValue('CharPosture',fsItalic); CursorPointer.setPropertyValue('CharWeight',fsBold); CursorPointer.setPropertyValue('CharUnderline',fsUnderline); В принципе, можно и самому задать степень «жирности» и другие параметры. Ведь fsBold и т.д. есть ни что иное, как константы. Поэтому можно, например ввести вместо fsBold константу 200, текст будет жирными. Советую поэкспериментировать с этим. Отмечу, что вновь вставленная строка будет обладать установленными свойствами, если их определить до вставки. И еще пара возможностей для работы с курсором. Можно перейти в начало текста: CursorPointer.gotoStart(False). В конец текста: CursorPointer.gotoEnd(False). CursorPointer.goLeft(short Count, boolean Expand) – передвигаем курсор влево на Count. Аналогично goRight(short Count, boolean Expand). Можно передвигаться по словам: boolean gotoNextWord(boolean Expand); boolean gotoPreviousWord(boolean Expand); boolean gotoEndOfWord(boolean Expand); boolean gotoStartOfWord(boolean Expand); Переменная Expand определяет будет ли курсор расширятся при своем передвижении. Существует и множество других возможностей работы с курсором, но мы остановимся только на этом необходимом наборе. 3.2 Вставка текста по метке Теперь рассмотрим вставку текста по меткам. Вообще, на мой взгляд, именно операции с метками являются самыми важными с точки зрения автоматизации работы на предприятии. Обычно создается типичный шаблон отчета, туда один раз забиваются все метки и все. Дальнейшая работа программ автоматизации каждый раз вставлять новые данне в этот шаблон по меткам. Поэтому отведем работе с метками повышенное внимание. За работу с метками отвечает интерфейс xBookmarksSupplier. В листинге 11 показан пример вставки текста по метке.
Как видно, начало этого метода ничем не отличается от предыдущего. Далее идут различия в получении метки. Для этого мы используем метод getBookmarks. Таким образом, мы получаем все метки, которые есть в документе. Далее мы можем найти метку, которая нам нужна. Для этого мы из всех меток выбираем метку с именем BookmarkName: BookmarksSupplier.getByName(BookmarkName). Метод getAnchor возвращает текстовый объект, который относится к этой метке. Если такой метки в документе нет, возвращается сообщение об ошибке. Для отслеживания этой ошибки мы вводим переменную Flag: boolean. Если же метка обнаружена, мы можем вставлять текст с помощью метода setString, вызванного для этой метки. На этом разговор о OpenOffice.Writer будем считать законченным и перейдем к OpenOffice.Calc. Дата: 14.05.2007, Автор: Васильков Ю. В. |
||
© 2004-2024 "DS"
Соглашение пользователя / Реклама / Карта сайта Created by