it_vse (519823), страница 48
Текст из файла (страница 48)
Метод showModalDialog позволяет использоватьне только встроенные диалоговые окна типа alert и prompt, но и создавать собственные диалоговые окнапользователя. Для этого сначала создается html-документ диалога, а затем этот документ вызывается вкачестве диалогового окна. Пример:Окно диалога – файл modal.htm :<HTML> <BODY text="red" bgcolor="Silver">Это окно диалога.<form name="forma1"><input type="button" name="knopka1" value="ОК" onclick="say1( )"><input type="button" name="knopka2" value="Cancel" onclick="say2( )"></form><SCRIPT language="vbscript">args=window.dialogArguments ' считывает массив аргументов переданных диалогуforma1.knopka1.value=args(0) ' меняет надпись на кнопке1, в соответствии с первым аргументомforma1.knopka2.value=args(1) ' меняет надпись на кнопке2, в соответствии со вторым аргументомsub say1( )' процедура срабатывает при нажатии кнопки 1 (см.
тэг INPUT)window.returnValue= forma1.knopka1.value ' возвращает из диалога значение нажатой кнопкиwindow.close( )' закрывает диалогend subsub say2( )' процедура срабатывает при нажатии кнопки 2window.returnValue= forma1.knopka2.valuewindow.close()end sub</SCRIPT></BODY></HTML> Ляхевич А.Г., 2000 - 2002 годВ приведенном выше диалоге созданы две кнопки, надписи на коорых задаются в качестве аргументовдиалога. При щелчке по кнопкам (событие onclick) вызываются соответствующие процедуры (say1 илиsay2), которые возвращают (window.returnValue) значение нажатой кнопки и закрывают диалог(window.close). Диалог вызывается из документа приведенного ниже:Документ из которого вызывается диалоговое окно:<HTML><BODY> <SCRIPT LANGUAGE="VBScript">args = Array("ОК", "Отмена")' для JavaScript было бы args = new Array("ОК", "Отмена");otvet=window.showModalDialog("zmodal.htm",args, "font-size:20; dialogWidth:10; dialogHeight:7; dialogTop:10;dialogLeft:10; center:no")alert(otvet)</SCRIPT> </BODY> </HTML>Здесь в переменную otvet попадает результат работы диалога, а сам диалог вызывается при помощи методаshowModalDialog, параметры которого обозначают следующее:"modal.htm" – адрес html-страницы, используемой в качестве диалогового окна.args– аргументы, передаваемые диалогу.
Если аргументов нет – можно указать null."параметры"– строка параметров font-size(размер шрифта), dialogWidth (ширина диалога в процентахэкрана), dialogHeight (высота диалога в процента экрана), dialogTop(координата Y в пикселахот верха экрана), dialogLeft (координата X в пикселах от левой стороны экрана), center (размещение диалога по центру экрана).Цикл For..Next в VBScript.Особенностью VBScript (в отличие от VBA) являеется нестандартное написание цикла For .. Next, безуказания в команде Next переменной – счетчика цикла. Пример:<HTML> <BODY> <SCRIPT LANGUAGE="vbscript">for i = 1 to 2MsgBox "Сообщение выводится 2 раза"Next</SCRIPT> </BODY> </HTML> Ляхевич А.Г., 2000 - 2002 годЛекция 10.
Объекты ActiveX - технология корпорации MicrosoftЯзык HTML – это просто язык гипертекстовой разметки, который определяет, как будет выглядетьстраница, но не может придать странице динамичности и интерактивности. Для решения этой проблемы,фирмой Sun были предложены Java-апплеты (небольшие программы, которые вставляются непосредственнов HTML-страницу и выполняются при помощи броузера). В ответ на эту инициативу, фирма Microsoftсоздала альтернативную технологию - объекты ActiveX, которые также представляют собой небольшиепрограммы, вставляемые в HTML страницу и выполняемые броузером.
Объект может представлять собойкак отдельную кнопку или другой элемент управления, так и целую программу. Как и любой объект,каждый объект ActiveX имеет свойства, методы и события, которыми можно манипулировать из программна VBScript и в JavaScript в виде "ИмяОбъекта.Свойство". Таким образом, созданные программистомобъекты ActiveX, становятся как бы продолжением встроенных объектов броузера.Загрузка объекта ActiveX происходит следующим образом: если объект ActiveX ранее не использовался,то он загружается через сеть и устанавливается на компьютере пользователя, регистрируясь в реестре так,чтобы при повторной загрузке этой страницы (или любой другой страницы, содержащей такой же объект),его не надо было бы загружать по сети.
Это, по мнению Microsoft, является преимуществом объектовActiveX перед апплетами Java, т.к. объекты ActiveX загружаются по сети лишь один раз. Другим "преимуществом" объектов ActiveX является то, что они имеют полный доступ к ресурсам компьютера (для сравнения: апплеты Java выполняются "в песочнице" под контролем менеджера безопасности и даже не имеютвозможности записывать/читать данные на винчестер). Эти "преимущества" объектов ActiveX означаютследующее: пользователь, заходя на Web-страницы, загружает и устанавливает у себя на компьютерепрограммное обеспечение неизвестного происхождения и назначения, которое может сделать с компьютером под управлением Windows 9x все что угодно.
Таким образом, налицо проблема с безопасностьюобъектов ActiveX, которые могут быть использованы для нанесения ущерба (вирусы) и кражи информации(троянские программы). Для решения этой проблемы Microsoft предлагает схему, напоминающую использование нотариусов: разработчик программного обеспечения предоставляет центру сертификации сведения осебе и обязательство не создавать программы, наносящие вред клиентам. Центр сертификации (солиднаяуважаемая организация, аналог нотариальной конторы), выдает разработчику сертификат ограниченногосрока действия (аналог печати предприятия), который позволит разработчику подписывать создаваемые импрограммы электронной цифровой подписью.
Электронная цифровая подпись позволяет от имени центрасертификации гарантировать:1) Данная программа распространяется именно этим автором (т.к. только у него есть сертификат - печать)и, следовательно, он будет нести ответственность за потенциально возможный ущерб.2) Программа не была изменена злоумышленником (изменение даже одного бита программы сделаетподпись некорректной).Перед загрузкой и установкой объекта ActiveX броузер выведет сведения об авторе и центре сертификации.Если вы не доверяете человеку, который создал объект, или не доверяете репутации центра сертификации(автор, в частности, может и сам себе выдать сертификат), то можете отменить загрузку объекта.
Настройками в броузере можно вообще отказаться от использования объектов ActiveX.Объект ActiveX вставляется в текст HTML-страницы при помощи тэга <Object> - для броузераInternet Explorer. В броузере Netscape используется тэг <Embed>, т.к. объекты ActiveX поддерживаются ненепосредственно, а через механизм подключаемых модулей "Plugins". Как и все сложные HTML-теги, тег<Object> обладает обширным набором различных атрибутов. Пример:<OBJECT ID="timer" CLASSID="clsid:59CCB4A0-727D-11CF-AC36-00AA00A47DD2"CODEBASE= "http://sait.com" ALIGN="middle" WIDTH="116px" HEIGHT="50px"><PARAM NAME="FontName" VALUE="Times"><PARAM NAME="FontHeight" VALUE="16"></OBJECT>Тег <Object> имеет следующие атрибуты.1) ID — определяет имя объекта, которое будет использовано при обращении к последнему из сценариев наVBScript и JavaScript.2) ClassID — при добавлении в систему компонента ActiveX информация о нем должна быть занесена вреестр Windows.
При этом ему присваивается уникальный идентификатор (GUID — global unique identifier),который используется для создания экземпляра соответствующего класса ActiveX-компонента. Получивинформацию о компоненте ActiveX, внедренном в Web-страницу, броузер в первую очередь используетатрибут ClassID для обращение к реестру Windows (API-функция CoGetclassObject). Если компонентинсталлирован и зарегистрирован, броузер применяет атрибут ClassID для создания экземпляра компонентаActiveX. В случае когда для данного атрибута не находится соответствующего GUID из реестра Windows,компонент загружается через Internet (API-функция CoGetclassObjectFromURL).3) CodeBase — как указывалось выше, если компонент не инсталлирован в системе клиента, броузер должензагрузить и инсталлировать его. Поэтому при включении компонента ActiveX в Web-страницу необходимо Ляхевич А.Г., 2000 - 2002 годзадать и значение атрибута CodeBase (то есть URL), по которому броузер может найти и загрузить элементуправления.4) Align — определяет способ размещения объекта на Web-странице.
Возможные следующие значения этогоатрибута:ЗначениеДействиеBaselineУстанавливает нижнюю границу объекта на уровне базовой линии обтекающего его текстаCenterЗадает горизонтальное выравнивание объекта по центру страницыLeftВыравнивает объект по левому краю страницы (при этом текст обтекает объект справа)MiddleСередина объекта располагается на уровне базовой линии охватывающего его текстаRightОбъект выравнивается по правому краю страницыTextНижняя граница объекта выравнивается по нижней границе текстаBottomTextMiddle Середина объекта располагается на одном уровне с серединой обтекающего текстаTextTopВерхняя граница объекта выравнивается по верхней границе обтекающего текста5) Width — задает ширину объекта при отображении его на Web-странице.6) Height — применяется для определения высоты объекта при отображении его на Web-странице.Возможны также следующие параметры:7) Border — определяет толщину рамки вокруг объекта.8) Codetype — используется для проверки совместимости приложения броузера с объектом, загружаемым внего для просмотра.9) Data — применяется для определения файла, содержащего необходимую для объекта информацию.Например, если создается экземпляр элемента управления Multimedia, то свойство Data будет содержатьссылку на AVI-файл (видеоданные).10) Declare — указывает, что необходимо, не создавая экземпляр объекта, объявить только его класс вконтексте страницы.
Это свойство используется при последующем создании в документе перекрестныхссылок на объект или при использовании объекта в качестве параметра для другого объекта в VBScript.11) Hspace — определяет размеры отступов справа и слева от границ видимой области объекта.12) Name — если объект расположен в блоке <Form>...</Form>, то при наличии данного атрибута он будетпередаваться на сервер с применением определенного для данной формы HTTP-метода. Благодаря этомуатрибуту в формах вместо элементов управления HTML можно использовать элементы управления ActiveX.13) Shapes — задает определенные области внедренного объекта как гиперссылки.14) Standby — определяет текст, который будет появляться на Web-странице при загрузке или созданииэкземпляра объекта.15) Туре — задает тип кодировки информации.16) Vspace — задает размеры отступов от верхней и нижней границ области отображения объекта.Применяемые внутри тегов <Object> </ Object >, тэги <PARAM> позволяют задать свойства объекта,экземпляр которого создается в HTML-документе.