![]() |
|
||||||||||
|
|||||
|
Регистрация: Jul 2008
Адрес: Украина, Киев
Сообщений: 253
|
Разбираюсь с поведением окошек по книге Adobe AIR Джои Лотта. Дошел до примера, в котором автор рекомендует на обработчик закрытия дочерних окон делать их невидимыми, а событие закрытия "душить"; вот документ класс:
package src.mapCreator { import flash.desktop.NativeApplication; import flash.display.MovieClip; import flash.display.StageAlign; import flash.display.StageScaleMode; import flash.display.NativeWindow; import flash.display.NativeWindowInitOptions; import flash.display.NativeWindowType; import flash.display.Screen; import flash.text.TextField; import flash.events.Event; import flash.events.MouseEvent; import flash.events.NativeWindowBoundsEvent; import flash.filesystem.File; public class Main extends MovieClip { private var text:TextField; public function Main():void { var options:NativeWindowInitOptions = new NativeWindowInitOptions(); options.type = NativeWindowType.UTILITY; var window:NativeWindow = new NativeWindow(options); window.x = 10; window.y = 10; window.activate(); window.width = 50; window.height = 50; text = new TextField(); text.text = "MainWindow"; window.stage.addChild(text); stage.addChild(text); var modal:ModalWindow = new ModalWindow(); modal.activate(); stage.nativeWindow.addEventListener(Event.EXITING, eventCloseProgram); } private function eventCloseProgram(e:Event):void { var windows:Array = NativeApplication.nativeApplication.openedWindows; for(var i:int = 0; i < windows.length; i++) windows[i].close(); } } } package src.mapCreator { import flash.display.StageAlign; import flash.display.StageScaleMode; import flash.display.NativeWindow; import flash.display.NativeWindowInitOptions; import flash.display.NativeWindowType; import flash.events.Event; public class ModalWindow extends NativeWindow { public function ModalWindow() { var options:NativeWindowInitOptions = new NativeWindowInitOptions(); options.type = NativeWindowType.UTILITY; super(options); stage.align = StageAlign.TOP_LEFT; stage.scaleMode = StageScaleMode.NO_SCALE; addEventListener(Event.CLOSING, eventClosing); } private function eventClosing(e:Event):void { visible = false; e.preventDefault(); } } } И еще вопрос в догонку: что нужно было курить, чтобы сделать работу с окнами такой жуткой? Добавлено через 4 часа 46 минут ага, сообразил, подписался на а нужно было на |
![]() |
Часовой пояс GMT +4, время: 22:15. |
|
|
« Предыдущая тема | Следующая тема » |
|
|