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

на главную - закладки

Жанры

Программы и файлы Windows

Чеботарев Игорь Григорьевич

Шрифт:

normal — обычная;

raised — приподнятая (3D);

complex — комбинация стилей raised и sunken;

static — может использоваться для окон, в которых не предусмотрен пользовательский ввод, - к примеру, для создания «флэш»-окон;

sunken — вдавленная (3D).

– CAPTION - определяет, будет ли окно отображаться с заголовком. Может принимать значения yes или no.

– ICON - путь к

файлу, содержащему значок (*.ico), содержащий картинку 32х32 пикселя. Можно использовать в качестве иконки и обычный bmp-файл - главное, чтобы соблюдались размеры картинки.

– SHOWINTASKBAR - если это свойство имеет значение yes, окно будет сворачиваться в панель задач, а также отображаться на Панели задач

– SINGLEINSTANCE - позволяет разрешить запуск только одной копии вашего приложения; для того чтобы определить, запущенно ваше приложение во второй раз или нет, это свойство использует

– APPLICATIONNAME. Может принимать значения yes/no.

– SYSMENU - будет ли отображаться системное меню. WINDOWSTATE - определяет, в каком виде приложение будет стартовать.

Принимает следующие значения:

normal — обычное окно.

minimize — свернуто.

maximize — на весь экран.

– MAXIMIZEBUTTON и MINIMIZEBUTTON принимают значения yes/no и отвечают за отображение кнопок Maximize и Minimize соответственно в заголовке окна.

Помимо атрибутов, характеризующих внешний вид программы, может быть задана версия продукта — например, так: …VERSION=”5.0”…

Для управления полосой прокрутки в окне HTA есть целых два параметра: SCROLL со значениями yes/no/auto и SCROLLFLAT — yes/no.

Если у вас установлен IE5.5, то вы можете воспользоваться дополнительным атрибутом NAVIGABLE, который позволяет переход по ссылке в окне HTA.

Для управления текстом предусмотрен параметр SELECTION (yes/no).

В дополнение ко всему перечисленному, вы можете иметь доступ к параметрам командной строки посредством свойства commandLine. Внимание, это свойство не имеет HTML-синтаксиса и может быть доступно только из скриптов! Немаловажно заметить, что все перечисленные параметры во время выполнения доступны только для чтения.

Давайте приступим к написанию своего первого скриптового приложения - создадим простейший текстовый редактор.

<HTML>

<HEAD>

<TITLE>hta demonstration</TITLE>

<OBJECT ID=cmdlg CLASSID="clsid:F9043C85-F6F2-101A-A3C9-08002B2F49FB">

</OBJECT>

Этот объект обеспечивает нашему приложению возможность открывать и сохранять документы. Для того чтобы его использовать, на вашем компьютере должен находиться файл COMDLG32.OCX. Он может быть установлен вместе Visual Basic, например. Библиотека должна быть зарегистрирована при помощи regsvr32.exe(не может быть, чтобы у вас не было этой программы). Следующая командная строка выполняет все необходимые действия: regsvr32 COMDLG32.OCX.

</HEAD>

<BODY>

<INPUT ID=btnOpenFile TYPE=button VALUE="Open File" ONCLICK="fileOpen">

<INPUT ID=btnSaveFile TYPE=button VALUE="Save File" ONCLICK="fileSave">

Две

кнопки, для открытия и сохранения файлов:

<BR>

<TEXTAREA id=txtArea rows=14 wrap=off cols=38

style="WIDTH: 500px; HEIGHT: 400px">

</TEXTAREA>

Текстовое поле, в котором мы будем редактировать текст.

<SCRIPT LANGUAGE=JavaScript>

var cdlOFNFileMustExist = 4096;

var cdlOFNHideReadOnly = 4;

Константы для работы с диалогами открытия и сохранения файлов:

CdlOFNFileMustExist — пользователь может вводить только имя существующего файла, в противном случае возникнет предупреждение.

CdlOFNHideReadOnly — прячет опцию Hide Only (открыть только для чтения).

 var ForReading = 1;

 var ForWriting = 2;

Константы для работы с файлами:

ForReading — файл открывается для чтения;

ForWriting — для записи в файл.

var fs = new ActiveXObject("Scripting.FileSystemObject");

Создаем объект для доступа к файловой системе: 

cmdlg.CancelError = false;

cmdlg.Flags = cdlOFNFileMustExist + cdlOFNHideReadOnly;

cmdlg.FilterIndex = 1;

 И настраиваем общие свойства для диалога открытия и сохранения:

function fileOpen

{

cmdlg.DialogTitle = "Choose a file for editing"

Заголовок диалога:

cmdlg.Filter = "Text file (*.txt)|*.txt|"+"Web content files(*.htm;*.html;*.hta;*.asp)|*.htm;*.html;*.hta;*.asp";

Фильтр, для отображения групп файлов.

cmdlg.ShowOpen;

Вызываем диалог открытия и в случае если пользователь осуществил выбор пытаемся прочитать файл и отобразить его.

if (!(cmdlg.FileName == ""))

{

var txtStream = fs.OpenTextFile(cmdlg.FileName,ForReading,false);

txtArea.value = txtStream.ReadAll;

txtStream.Close;

}

}

function fileSave

{

cmdlg.DialogTitle = "Save file as";

cmdlg.Filter = "Text file (*.txt)|*.txt|Custom type(*.*)|*.*";

cmdlg.ShowSave;

if (!(cmdlg.FileName == ""))

{

var txtStream = fs.OpenTextFile(cmdlg.FileName,ForWriting,true);

txtStream.Write(txtArea.value);

txtStream.Close;

}

}

</SCRIPT>

</BODY>

</HTML>

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

http://www.wshscripting.com/ — открытый исходный код и множество примеров скриптов для WSH (Windows Scripting Host).

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

Моя на одну ночь

Тоцка Тала
Любовные романы:
современные любовные романы
короткие любовные романы
5.50
рейтинг книги
Моя на одну ночь

Черный Маг Императора 8

Герда Александр
8. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Черный Маг Императора 8

Измена. Отбор для предателя

Лаврова Алиса
1. Отбор для предателя
Фантастика:
фэнтези
5.00
рейтинг книги
Измена. Отбор для предателя

Кодекс Крови. Книга II

Борзых М.
2. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга II

Шаг в бездну

Муравьёв Константин Николаевич
3. Перешагнуть пропасть
Фантастика:
фэнтези
космическая фантастика
7.89
рейтинг книги
Шаг в бездну

Часовая битва

Щерба Наталья Васильевна
6. Часодеи
Детские:
детская фантастика
9.38
рейтинг книги
Часовая битва

Вечная Война. Книга II

Винокуров Юрий
2. Вечная война.
Фантастика:
юмористическая фантастика
космическая фантастика
8.37
рейтинг книги
Вечная Война. Книга II

Хроники странного королевства. Вторжение. (Дилогия)

Панкеева Оксана Петровна
110. В одном томе
Фантастика:
фэнтези
9.38
рейтинг книги
Хроники странного королевства. Вторжение. (Дилогия)

Часовой ключ

Щерба Наталья Васильевна
1. Часодеи
Фантастика:
фэнтези
9.36
рейтинг книги
Часовой ключ

Инвестиго, из медика в маги

Рэд Илья
1. Инвестиго
Фантастика:
фэнтези
городское фэнтези
попаданцы
5.00
рейтинг книги
Инвестиго, из медика в маги

Кротовский, может, хватит?

Парсиев Дмитрий
3. РОС: Изнанка Империи
Фантастика:
попаданцы
альтернативная история
аниме
7.50
рейтинг книги
Кротовский, может, хватит?

Драконий подарок

Суббота Светлана
1. Королевская академия Драко
Любовные романы:
любовно-фантастические романы
7.30
рейтинг книги
Драконий подарок

Очешуеть! Я - жена дракона?!

Амеличева Елена
Фантастика:
юмористическая фантастика
5.43
рейтинг книги
Очешуеть! Я - жена дракона?!

Идеальный мир для Лекаря 9

Сапфир Олег
9. Лекарь
Фантастика:
боевая фантастика
юмористическое фэнтези
6.00
рейтинг книги
Идеальный мир для Лекаря 9