Библиотека для создания оконных интерфейсов на любых скриптовых языках в операционной системе Windows
Веретенников Александр Борисович Уральский государственный университет им. А. М. Горького. Научный руководитель: д. ф.-м. н. Пименов Владимир Германович
Скриптовые языки JScript, VBScript, Perl, Python
Скриптовые языки Не имеют удобных средств для создания оконных интерфейсов
JScript WScript.Echo("Hello world") Shell = new ActiveXObject("WScript.Shell") Shell.Popup("Hello world") Это все, что есть в JScript!
Скриптовые языки Это потребовало создания дополнительного инструментария для решения подобных задач.
WindowSystemObject полный доступ ко всем возможностям оконной системы, включая рисование в окнах, поддержку всех встроенных управляющих элементов Windows и встроенных диалоговых окон
WindowSystemObject
JScript. Пример. o = new ActiveXObject("Scripting.WindowSystemObject") f = o.CreateForm(0,0,650,400) f.Show() o.Run()
Пример
Controls Button Edit ComboBox CheckBox DateTimePicker Calendar ProgressBar ListBox ToolBar ListView TreeView RichEdit ReBar IP Address HyperLink StatusBar Splitter TrackBar MenuBar Animate TabControl HotKey Header UpDown ActiveX Controls и др.
Графика Line - линие Image - изображение Polygon - многоугольник Text - текст Rectangle – прямоугольник RoundRect – прямоугольник с закругленными краями
Стандартные диалоговые окна File Open Dialog File Save Dialog Print Dialog Printer Setup Dialog Page Setup Dialog Color Dialog Font Dialog Find Dialog Replace Dialog
Пример
Пример фигурного окна
Обработка событий Базовый уровень Уровень непосредственного определения Уровень списков обработчиков
JScript o = new ActiveXObject("Scripting.WindowSystemObject") f = o.CreateForm(0,0,650,400) f.CenterControl() f.Show() WScript.ConnectObject(f, "form_"); function form_OnClick() { f.MessageBox("OnClick") } o.Run()
JScript o = new ActiveXObject("Scripting.WindowSystemObject") f = o.CreateForm(0,0,650,400) f.CenterControl() f.OnClick = form_OnClick f.Show() function form_OnClick() { f.MessageBox("OnClick") } o.Run()
JScript o = new ActiveXObject("Scripting.WindowSystemObject") f = o.CreateForm(0,0,650,400) f.CenterControl() f.AddEventHandler("OnClick",form_OnClick) f.Show() function form_OnClick() { f.MessageBox("OnClick") } o.Run()
Пример создания кнопки o = new ActiveXObject("Scripting.WindowSystemObject") f = o.CreateForm(0,0,650,400) f.CenterControl() b = f.CreateButton(10,10,75,25,"OK") b.OnClick = button_OnClick f.Show() function button_OnClick() { f.MessageBox("OnClick") } o.Run()
JScript
Список литературы Microsoft Platform SDK. MSDN Library. Дональд Бокс. Сущность технологии СОМ. Библиотека программиста. СПб.:Питер, George Shepherd, Brad King. Inside ATL. Microsoft Press, Дейл Роджерсон. Основы COM. Microsoft Press, C. Petzold. Programming Windows® 95. Microsoft Press, П. Дарахвелидзе, Е. Марков. Программирование в Delphi 4. СПб.: БХВ – Санкт-Петербург, Джефф Элджер. C++: библиотека программиста – СПб.: Питер, 2001.