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

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

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

Регистрация: Feb 2008
Сообщений: 890
По умолчанию Координаты мыши за пределами сцены

Полазил по поиску, нашел сообщение уважаемого iNils-а, что координаты мыши за пределами сцены можно определить только с помощью ява-скрипт.

Но это не всегда так.
Если зажать на сцене мышь и не отпускать, то при выезде за сцену будут даваться "правильные" координаты:
Код:
this.onEnterFrame = function():Void {
		trace(_xmouse + ' ' + _ymouse);
};
Вот сижу и думаю, как бы так исхитриться, чтобы получать "правильные" координаты не зажимая мышь?
__________________
скриптограф

Старый 19.11.2008, 18:59
lexa2000lexa вне форума Посмотреть профиль Отправить личное сообщение для lexa2000lexa Найти все сообщения от lexa2000lexa
  № 2  
Ответить с цитированием
lexa2000lexa

Регистрация: Sep 2005
Сообщений: 950
вот пример когда без удерживания покажет что курсор покинул приделы флешки.
Код AS1/AS2:
_global.borderWatcher={};    
AsBroadcaster.initialize(borderWatcher);  	
borderWatcher.init = function():Void {
	var clip:MovieClip = _root.createEmptyMovieClip("list_clip"+Math.random(), 100000);
	clip.lineStyle(1, 0, 0);          
	clip.beginFill(0, 0);
	clip.moveTo(0, 0);
	var xMax:Number = Stage.width, yMax:Number = Stage.height;
	clip.lineTo(0, yMax), clip.lineTo(xMax, yMax), clip.lineTo(xMax, 0), clip.lineTo(0);
	clip.endFill();
	clip.useHandCursor = false;     
	clip.onRollOut = function():Void {
		borderWatcher.broadcastMessage("onStageRollOut");
	};
	clip.onRollOver = function():Void {
		borderWatcher.broadcastMessage("onStageRollOver");
	};
};
borderWatcher.init();          
//**********************************************************
borderWatcher.addListener(info);            
info.onStageRollOut = function():Void {
	this.text = "Указатель вышел за границы фильма";
};
info.onStageRollOver = function():Void {
	this.text = "Указатель вошел в границы фильма";
};

Старый 19.11.2008, 19:01
orcpochta вне форума Посмотреть профиль Отправить личное сообщение для orcpochta Найти все сообщения от orcpochta
  № 3  
Ответить с цитированием
orcpochta

Регистрация: Feb 2008
Сообщений: 890
еще бы и координаты получать..))

UPD: кстати, код не работает - что я не так делаю?
__________________
скриптограф

Старый 19.11.2008, 19:10
lexa2000lexa вне форума Посмотреть профиль Отправить личное сообщение для lexa2000lexa Найти все сообщения от lexa2000lexa
  № 4  
Ответить с цитированием
lexa2000lexa

Регистрация: Sep 2005
Сообщений: 950
а что именно не работает? Я думаю вы кинули текстовое поле на сцену с именем info или я ошибаюсь)?

Старый 20.11.2008, 12:38
orcpochta вне форума Посмотреть профиль Отправить личное сообщение для orcpochta Найти все сообщения от orcpochta
  № 5  
Ответить с цитированием
orcpochta

Регистрация: Feb 2008
Сообщений: 890
Цитата:
Сообщение от lexa2000lexa Посмотреть сообщение
а что именно не работает? Я думаю вы кинули текстовое поле на сцену с именем info или я ошибаюсь)?
Извините, все работает. Вчера в торопях не вглядываясь в текст тупо копи-пастнул - не заработало, увидел, что info нигде не объявляется, объявил info как Object, ничего не дало, отписался и убежал.

Это все хорошо, но меня вопрос получения координат за сценой мучает давно. Хотелось бы как-то на основе взаимствования стандартных классов создать пользовательский класс, в котором будут немного видоизменены или дополнены стандартные методы, с помощью которого можно будет получать координаты за сценой.
Почему-то мне кажется очевидным, что если с зажатой мышой можно получить координаты, то с помощью каких-то фокусов можно получить их и без зажатой мыши - хотя может я и глубоко ошибаюсь, но хочется верить...)))

Если я не решу эту задачу, она взорвет мне мозг...)))
__________________
скриптограф

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

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

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


 


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


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