Чтение онлайн

на главную

Жанры

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

 //Определяем пути к файлам

 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);

}

После окончания загрузки в браузер HTML-файла с формой нужно считать информацию из XML-файла с данными и отобразить в форме данные для первой записи. Мы будем это делать в функции-обработчике

ie_DocumentComplete
события
DocumentComplete
объекта
Application
, которое генерируется как раз после окончания загрузки документа в браузер (листинг 7.11).

Листинг 7.11. Функция-обработчик окончания загрузки документа в браузер

function ie_DocumentComplete {

 //Создаем экземпляр objListPersons объекта ListPersons

 objListPersons = new ListPersons;

 //Загружаем данные из XML-файла в массив PersonArr

 objListPersons.FileToArray;

 //Получаем ссылку на объект Document

 doc = ie.Document;

 //Устанавливаем заголовок окна

 doc.title = "Редактирование данных";

 //Указываем функции-обработчики нажатий на кнопки формы

 doc.all.btnSave.onclick=btnSave_OnClick;

 doc.all.btnCancel.onclick=btnCancel_OnClick;

 doc.all.btnFirst.onclick=btnFirst_OnClick;

 doc.all.btnPrevious.onclick=btnPrevious_OnClick;

 doc.all.btnNew.onclick=btnNew_OnClick;

 doc.all.btnDelete.onclick=btnDelete_OnClick;

 doc.all.btnNext.onclick=btnNext_OnClick;

 doc.all.btnFinal.onclick=btnFinal_OnClick;

 //Указываем функции-обработчики изменения текста в полях ввода

 doc.all.txtLastName.onchange = txtBoxOnChange;

 doc.all.txtName.onchange = txtBoxOnChange;

 doc.all.txtPhone.onchange = txtBoxOnChange;

 doc.all.txtStreet.onchange = txtBoxOnChange;

 doc.all.txtHouse.onchange = txtBoxOnChange;

 doc.all.txtApp.onchange = txtBoxOnChange;

 doc.all.txtNote.onchange = txtBoxOnChange;

 if (objListPersons.PersonArr.length < 1)

//Если
в XML-файле нет данных, добавляем пустую запись

objListPersons.AddRecord;

 //В качестве текущей устанавливаем первую запись

 objListPersons.CurRecord = 0;

 //Загружаем в форму данные из массива PersonArr

 //для первой записи

 objListPersons.LoadDialog;

 // Делаем окно Internet Explorer'а видимым

 ie.Visible = true;

}

В функции

ie_DocumentComplete
, кроме прочего, задаются функции-обработчики событий, генерируемых в форме текстовыми полями ввода и кнопками. К описанию процесса обработки таких событий мы и перейдем.

Обработка событий, генерируемых элементами управления формы

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

<input type="button" value="<<" name="btnFirst">

Для доступа к элементу управления используется объект Document, который соответствует загруженному в браузер HTML-документу. Ссылка на объект Document Хранится в свойстве Document объекта Application:

//Получаем ссылку на объект Document

doc = ie.Document;

Обработчики событий для элементов управления формы указываются тогда следующим образом:

doc.all.ControlName.EventName=FunctionName;

Здесь

ControlName
— имя элемента управления,
EventName
— имя обрабатываемого события,
FunctionName
— имя функции-обработчика, которая будет вызываться при наступлении события
EventName
. Событие, возникающее при нажатии на кнопку в форме, называется
onclick
, а событие, происходящее при изменении текста в поле ввода, —
onchange
:

//Указываем функции-обработчики нажатий на кнопки формы

Поделиться:
Популярные книги

Бастард Императора

Орлов Андрей Юрьевич
1. Бастард Императора
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Бастард Императора

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Имя нам Легион. Том 7

Дорничев Дмитрий
7. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 7

Измена. Вторая жена мужа

Караева Алсу
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Вторая жена мужа

Буря империи

Сай Ярослав
6. Медорфенов
Фантастика:
аниме
фэнтези
фантастика: прочее
эпическая фантастика
5.00
рейтинг книги
Буря империи

Пенсия для морского дьявола

Чиркунов Игорь
1. Первый в касте бездны
Фантастика:
попаданцы
5.29
рейтинг книги
Пенсия для морского дьявола

На изломе чувств

Юнина Наталья
Любовные романы:
современные любовные романы
6.83
рейтинг книги
На изломе чувств

Тринадцатый II

NikL
2. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый II

Сирота

Шмаков Алексей Семенович
1. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Сирота

Законы Рода. Том 9

Flow Ascold
9. Граф Берестьев
Фантастика:
городское фэнтези
попаданцы
аниме
дорама
фэнтези
фантастика: прочее
5.00
рейтинг книги
Законы Рода. Том 9

Красноармеец

Поселягин Владимир Геннадьевич
1. Красноармеец
Фантастика:
боевая фантастика
попаданцы
4.60
рейтинг книги
Красноармеец

Огненный князь 4

Машуков Тимур
4. Багряный восход
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Огненный князь 4

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5

Инкарнатор

Прокофьев Роман Юрьевич
1. Стеллар
Фантастика:
боевая фантастика
рпг
7.30
рейтинг книги
Инкарнатор