Шаг 87.
Автоматизация Microsoft Word. Работа с объектами в документе Word. Пример программы

    На этом шаге мы рассмотрим небольшой пример программы, использующего рассмотренные ранее свойства и методы.

    Разработаем простую процедуру для формирования товарного ярлыка - объекта TextBox (надпись), содержащего таблицу 2x8, ячейки которой заполнены текстом (описанием товара).

    Вот текст этой процедуры:

procedure TForm1.Button6Click(Sender: TObject);
//Создание товарного ярлыка
const
   msoTextOrientationHorizontal=1;
var
   TextBox:variant;
   Table:variant;
begin
   //Создаем объект TextBox
   TextBox:=W.ActiveDocument.Shapes.
      AddTextbox(msoTextOrientationHorizontal,
      10,10,250,120,W.ActiveDocument.Range);
   //В области объекта TextBox создаем таблицу
   Table:=W.ActiveDocument.Tables.
      Add(TextBox.TextFrame.TextRange,8,2);
   //Линии таблицы делаем невидимыми
   Table.Borders.Enable:=False;
   // Заполняем таблицу
   Table.Cell(1,1).Range:='Наименование товара:';
   Table.Cell(1,2).Range:='Сорочка';
   Table.Cell(2,1).Range:='Страна изготовитель:';
   Table.Cell(2,2).Range:='Англия';
   Table.Cell(3,1).Range:='Фирма-изготовитель:';
   Table.Cell(3,2).Range:= ' "Marks&Spencer" ';
   Table.Cell(5,1).Range:= 'Состав сырья:';
   Table.Cell(5,2).Range:='100% хлопок';
   Table.Cell(7,1).Range:='Размер:';
   Table.Cell(7,2).Range:='48-50';
   Table.Cell(8,1).Range:='Артикул:';
   //Выделяем первый столбец таблицы и изменяем в нем шрифт
   Table.Columns.Item(1).Select;
   W.Selection.Font.Bold:=True;
   TextBox.Select;
end;
Полный текст приложения можно взять здесь (6,6 Кб).

    Результат выполнения данной процедуры изображен на рисунке 1.


Рис.1. Результат выполнения приложения

    Если потребуется создать ярлыки для нескольких товаров, например, указанных в таблице базы данных, то придется изменить эту программу таким образом, чтобы следующий ярлык располагался за текущим, - для этого придется учитывать размеры страницы, а также размеры и координаты расположения ярлыков.

    В заключение обратим ваше внимание на первый параметр метода AddTextbox(), который определяет ориентацию текста в надписи. В таблице 1 перечислены возможные значения этого параметра.

Таблица 1. Возмодные значения первого параметра метода AddTextbox()
Константа Значение
msoTextOrientationHorizontal 1
msoTextOrientationUpward 2
msoTextOrientationDownward 3
msoTextOrientationVerticalFarEast 4
msoTextOrientationVertical 5
msoTextOrientationHorizontalRotatedFarEast 6

    Обратите внимание, что не при всех значениях этого параметра возможно создание таблицы.

    Со следующего шага мы начнем рассматривать работу с объектом Word.Basic.




Предыдущий шаг Содержание Следующий шаг