Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Flash Приложения: AIR, Zinc и тд.

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 11.05.2009, 13:34
litebox вне форума Посмотреть профиль Отправить личное сообщение для litebox Найти все сообщения от litebox
  № 1  
Ответить с цитированием
litebox
 
Аватар для litebox

Регистрация: Jul 2008
Адрес: Украина, Киев
Сообщений: 253
По умолчанию AIR приложение не запускается

Разбираюсь с поведением окошек по книге Adobe AIR Джои Лотта. Дошел до примера, в котором автор рекомендует на обработчик закрытия дочерних окон делать их невидимыми, а событие закрытия "душить"; вот документ класс:
Код AS3:
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();
		}
	}
 
}
и класс ModalWindow, который представляет собой окошко:
Код AS3:
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();
        }
 
	}
 
}
После этого при тестировании приложения в IDE окно появляется ровно один раз, и после закрытия (дочерние окна, кстати, не исчезают) более ничего не происходит. При попытке провести DEBUG, дабы проверить, на чем приложение затыкается, появляется сообщение "Debugger launch failed. Debug session will terminate". Такое ощущение, что процесс, который овтечает за предыдущую сессию программы остается благополучно висеть в памяти, не давая развернуться новой задаче.
И еще вопрос в догонку: что нужно было курить, чтобы сделать работу с окнами такой жуткой?

Добавлено через 4 часа 46 минут
ага, сообразил, подписался на
Код AS3:
stage.nativeWindow.addEventListener(Event.EXITING, eventCloseProgram);
а нужно было на
Код AS3:
stage.nativeWindow.addEventListener(Event.CLOSING, eventCloseProgram);

Создать новую тему   Часовой пояс GMT +4, время: 22:15.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 22:15.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.