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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 05.08.2009, 01:57
SamFR вне форума Посмотреть профиль Отправить личное сообщение для SamFR Посетить домашнюю страницу SamFR Найти все сообщения от SamFR
  № 1  
Ответить с цитированием
SamFR

Регистрация: Mar 2008
Адрес: Ростов-на-Дону
Сообщений: 354
По умолчанию Перемещение окон в AIR

Люди, подскажите пожалуйста.
Задача такая: ограничить область перемещения окна прямоугольником mainScreen-а.
Следующий код:

Код AS3:
var win:NativeWindow = stage.nativeWindow,
    scr:Screen = Screen.mainScreen,
    scrBounds:Rectangle = scr.visibleBounds;
 
stage.addEventListener(MouseEvent.MOUSE_DOWN, eBcgrPressed);
win.addEventListener(NativeWindowBoundsEvent.MOVING, eWindowMoving);
 
function eBcgrPressed(e:MouseEvent):void{
	win.startMove();
}
 
function eWindowMoving(e:NativeWindowBoundsEvent):void{
	var winBounds:Rectangle = e.afterBounds,
	    c1:Boolean = false, c2:Boolean = false;
 
	trace(winBounds.x, winBounds.y);
 
	if (winBounds.x < 0) winBounds.x = 0;
	else if (winBounds.x + winBounds.width > scrBounds.x + scrBounds.width) winBounds.x = scrBounds.x + scrBounds.width - winBounds.width;
	else c1 = true;
 
	if (winBounds.y < 0) winBounds.y = 0;
	else if (winBounds.y + winBounds.height > scrBounds.y + scrBounds.height) winBounds.y = scrBounds.y + scrBounds.height - winBounds.height;
	else c2 = true;
 
	trace('After:', winBounds.x, winBounds.y);
 
	if(!(c1 && c2)){
		e.preventDefault();
		win.x = winBounds.x;
		win.y = winBounds.y;
	}
}
приводит к тому, что окно иногда отказывается перемещаться (например, если мышь при перетягивании вышла за его пределы), иногда останавливается на некотором расстоянии от границы экрана (если перемещать быстро), а иногда вообще перемещается на некотором расстоянии от мыши.

Может стоит копать в сторону обычного MouseEvent.MOUSE_MOVE?

UPD1: И ещё появился вопрос, очень для меня важный. Как заставить URLLoader работать через прокси?
UPD2: С прокси всё понятно. Жаль. Всё же, если вдруг кто-то знает, как использовать настройки, отличные от системных, буду очень рад)


Последний раз редактировалось SamFR; 05.08.2009 в 04:10.
Старый 19.08.2009, 19:28
SamFR вне форума Посмотреть профиль Отправить личное сообщение для SamFR Посетить домашнюю страницу SamFR Найти все сообщения от SamFR
  № 2  
Ответить с цитированием
SamFR

Регистрация: Mar 2008
Адрес: Ростов-на-Дону
Сообщений: 354
Люююди, правда никто не знает (насчёт перемещения)? Мне кажется, здесь что-то элементарное, туплю просто я =) Если кто знает решение, отпишитесь, пожалуйста. На данный момент пока что просто отказался от этой фичи, но в ТЗ она чётко прописана)

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

Теги
air , окна , перемещение

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

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


 


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


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