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

    На этом шаге мы рассмотрим приемы работы со списком открытых документов.

    Вся информация об открытых и созданных документах содержится в коллекции Documents, элементами коллекции являются документы, а свойство коллекции Count определяет количество документов. Для начала получим список открытых документов, используем свойство Count коллекции и переберем все элементы коллекции. Создадим новую форму в последнем примере 45 шага и разместим в ней компонент типа ListBox1: TListBox. В момент появления этой формы экране заполним ListBox1 именами документов, используя следующий программный текст.

procedure TForm2.FormShow(Sender: TObject);
var
  a: Integer;
  S: String;
begin
 ListBox1.Items.Clear;
 for a :=1 to W.Documents.count do
  begin
     S:=W.Documents.Item(a).Name;
     ListBox1.Items.Add(S);
  end;
end;

    В результате выполнения этой процедуры получим список документов, открытых в данный момент времени. Пример формы с таким списком показан на рисунке 1.


Рис.1. Список открытых документов приложения Word

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

    В нашем примере на рисунке 1 по нажатию кнопки выполняется процедура, которая выбирает документ в списке ListBox1 по номеру документа. Номер первого документа в коллекции равен 1.

procedure TForm2.Button1Click(Sender: TObject);
//Выбор документа
begin
  W.Documents.Item(ListBox1.ItemIndex+1).Activate;
end;
Текст этого приложения можно взять здесь (9,9 Кб).

    После того как документ создан (или открыт) и выбран, можно приступить к внесению в него изменений, т.е. к редактированию.

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




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