Показать сообщение отдельно
Старый 07.02.2012, 03:19
redefy вне форума Посмотреть профиль Отправить личное сообщение для redefy Посетить домашнюю страницу redefy Найти все сообщения от redefy
  № 9  
Ответить с цитированием
redefy
 
Аватар для redefy

Регистрация: Mar 2011
Сообщений: 58
Собственно в тему.
Только изучаю AIR, столкнулся с одним не понятным мне моментом. Не могу понять в чем причина.

Я хочу сделать главное окно владельцем для всех остальных окон. Ну то есть чтобы если минимизировалось главное окно, то с ним минимизировались и все остальные.

Но. Если я делаю это не для главного окна, типа так
Код AS3:
package {
	import flash.desktop.NativeApplication;
	import flash.display.NativeWindow;
	import flash.display.NativeWindowInitOptions;
	import flash.display.NativeWindowRenderMode;
	import flash.display.NativeWindowSystemChrome;
	import flash.display.NativeWindowType;
 
	import flash.display.Sprite;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
 
	/**
	 * Работа с окнами в AIR
	 * @author redefy
	 */
	public class Main extends Sprite {
 
		public function Main():void {
			stage.scaleMode = StageScaleMode.NO_SCALE;
			stage.align = StageAlign.TOP_LEFT;
			stage.color = 0x0;
 
			var mainWindowsOption:NativeWindowInitOptions = new NativeWindowInitOptions();
			//mainWindowsOption.owner = this.stage.nativeWindow;
 
			var mainWindow:NativeWindow = new NativeWindow(mainWindowsOption);
			mainWindow.stage.color = 0x1b1b1b;
			mainWindow.width = 400;
			mainWindow.height = 300;
			mainWindow.stage.scaleMode = StageScaleMode.NO_SCALE;
			mainWindow.stage.align = StageAlign.TOP_LEFT;
			mainWindow.activate();
 
			var windowsOption:NativeWindowInitOptions = new NativeWindowInitOptions();
			windowsOption.owner = mainWindow;
			windowsOption.type = NativeWindowType.UTILITY;
 
			var window:NativeWindow = new NativeWindow(windowsOption);
			window.stage.color = 0xcccccc;
			window.width = 200;
			window.height = 200;
			window.activate();
 
			trace(NativeApplication.nativeApplication.openedWindows);
		}
	}
}
То все ок. Если свернуть первое окно, то второе сворачивается так же. То есть как и должно быть.

Но если раскомментить строчку
Код AS3:
mainWindowsOption.owner = this.stage.nativeWindow;
, то есть сделать главное окно владельцем первого, то окна, кроме главного, вообще не показываются.

Хотя
Код AS3:
trace(NativeApplication.nativeApplication.openedWindows);
как и положенно возвращает ссылки на 3 окна.

Не могу понять где я затупил.

Добавлено через 17 часов 32 минуты
Неужели в Russian Federation никто не работает с AIR ?

Блин, такое ощущение что первопроходец я какой-то. Низачто не поверю что никто не сталкивался с этим моментом. Ладно я еще зеленый, но старожилы то форума неужели не облазили AIR вдоль и поперек?

Добавлено через 20 часов 58 минут
Проблема решена.
Всем спасибо за "помощь"...