Windows Script Host для Windows 2000/XP - Андрей Попов
Шрифт:
Интервал:
Закладка:
В if (objListPersons.IsChanged) { //Рзменения были сделаны
 //Сохраняем данные в XML-файле
В objListPersons.SaveData();
 //Заново загружаем данные из XML-файла в массив PersonArr
В objListPersons.FileToArray();
В }
 //Переходим к последней записи в массиве
В objListPersons.FinalRecord();
 //Загружаем в форму данные из массива PersonArr
 //для текущей записи
В objListPersons.LoadDialog();
 //Выводим сообщение в заголовке окна
 doc.title = "Запись N " + (objListPersons.CurRecord + 1);
}
//Функция-обработчик изменения текста в полях ввода
function txtBoxOnChange() {
 //Устанавливаем признак изменения данных в форме
В objListPersons.IsChanged = true;
 //Выводим сообщение в заголовке окна
 doc.title = "Редактирование данных";
}
//Основная запускная функция
function Main() {
 //Создаем объект WshShell
В WshShell = WScript.CreateObject("WScript.Shell");
 //Определяем пути к файлам
В InitPath();
 //Создаем объект InternetExplorer.Application с возможностью
 //обработки событий этого объекта
В ieВ = WScript.CreateObject("InternetExplorer.Application", "ie_");
 //Устанавливаем свойства объекта ie для отображения формы3
В ie.AddressBar = false;
В ie.FullScreen = false;
В ie.MenuBarВ В В = false;
В ie.ResizableВ = false;
В ie.StatusBarВ = false;
В ie.ToolBarВ В В = false;
 //Устанавливаем размеры окна
 ie.Height = 300; //Высота
 ie.Width = 780;  //Длина
В IsQuit=false;
 //Загружаем HTML-файл с формой
В ie.Navigate(PathHTML);
В while (!IsQuit)
 //Приостанавливаем сценарий на 0,1 сек
В WScript.Sleep(100);
}
/******************* Начало **********************************/
Main();
/************* Конец *********************************************/В
Глава 8
Взаимодействие сценариев с Microsoft Office
РќРµ будет большим преувеличением сказать, что почти РЅР° всех компьютерах СЃ операционной системой Windows установлены программы пакета Microsoft Office. Рти приложения являются серверами автоматизации, С‚.Рµ. РёС… действиями можно управлять РёР· внешних программ, РІ том числе Рё РёР· сценариев WSH. Р’ этой главе РјС‹ рассмотрим РЅР° примерах, каким образом можно выводить РёР· сценариев WSH информацию РІ РґРІРµ наиболее распространенные офисные программы — Microsoft Word Рё Microsoft Excel.
Объектные модели Microsoft Word и Excel
Для того чтобы использовать из сценариев WSH те возможности, которые поддерживают программы Word и Excel, необходимо знать, какие именно объекты предоставляются для внешнего использования этими серверами автоматизации и как объекты соотносятся друг с другом. Хотя объектные модели различных приложений Microsoft Office довольно сложны (например, Word содержит порядка 200 взаимосвязанных друг с другом объектов), они очень похожи друг на друга, причем для практических целей достаточно понять принцип работы с несколькими ключевыми объектами. Здесь мы не будем останавливаться на подробном рассмотрении свойств и методов объектов Word и Excel (для желающих глубже познакомиться с этой темой можно порекомендовать, например, замечательную книгу [17]), а лишь кратко упомянем, какие именно объекты будут использоваться в рассмотренных ниже примерах сценариев.
Увидеть структуру объектной модели Word можно воспользовавшись встроенной РІ Word справкой РїРѕ Visual Basic (СЂРёСЃ. 8.1).В
Рис. 8.1. Объектная модель Microsoft Word
Ртак, РЅР° самом верхнем СѓСЂРѕРІРЅРµ объектной модели Word находится объект Application, который представляет непосредственно само приложение Word Рё содержит (РІ качестве свойств) РІСЃРµ остальные объекты. Таким образом, объект Application используется для получения доступа Рє любому РґСЂСѓРіРѕРјСѓ объекту Word.
Семейство Documents является свойством объекта Application и содержит набор объектов Document, каждый из которых соответствует открытому в Word документу. Класс Documents понадобится нам в сценариях для создания новых документов. Объект Document содержит в качестве своих свойств семейства различных объектов документа; символов (Characters), слов (Words), предложений (Sentences), параграфов (Paragraphs) и т.д. В одном из рассмотренных ниже сценариев, например, нам понадобится работать с семейством закладок в документе (Bookmarks).
Объект Selection позволяет работать СЃ выделенным фрагментом текста (этот фрагмент может быть Рё пустым). Таким образом, можно сказать, что объект Selection открывает путь РІ документ, С‚.Рє. РѕРЅ предоставляет доступ Рє выделенному фрагменту документа. Р’ частности, Сѓ объекта Selection имеется метод TypeText(Text), СЃ помощью которого можно вставлять текст РІ документ. Рспользуя свойства этого объекта (которые, РІ СЃРІРѕСЋ очередь, РјРѕРіСѓС‚ являться объектами СЃРѕ СЃРІРѕРёРјРё свойствами), можно управлять параметрами выделенного фрагмента, например, устанавливать нужный размер Рё гарнитуру шрифта, выравнивать параграфы РїРѕ центру Рё С‚.Рї.
Объектная модель Excel построена по тому же принципу, что и объектная модель Word. Основным объектом, содержащим все остальные, является Application (рис. 8.2).
Рис. 8.2. Объектная модель Microsoft Excel