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

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

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

Регистрация: Sep 2010
Сообщений: 21
По умолчанию MOUSE_OVER

Требуется получать событие MOUSE_OVER все время (с некоторым интервалом, например, 10 раз в секунду), пока курсор над объектом, а не только в момент наведения курсора. Как это лучше сделать?
И сразу второй вопрос - как сделать цикл, что бы на каждой итерации была задержка? Пробовал таймер, не получилось.

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

Регистрация: Mar 2010
Адрес: 54.713862552265084 = 20.442724227905273
Сообщений: 449
Отправить сообщение для stweet с помощью Skype™
Цитата:
Пробовал таймер, не получилось.
плохо пробовал.

Старый 21.09.2010, 23:20
roborobo вне форума Посмотреть профиль Отправить личное сообщение для roborobo Найти все сообщения от roborobo
  № 3  
Ответить с цитированием
roborobo

Регистрация: Sep 2010
Сообщений: 21
Да, плохо... Есть работающий пример?

Старый 22.09.2010, 00:24
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 4  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Сработал mouseOver, включился таймер, сработал mouseOut, выключился таймер. Только что-то мне подсказывает, что тут лучше пользоваться enterFrame, а не таймером.
__________________
тут я

Старый 22.09.2010, 00:41
roborobo вне форума Посмотреть профиль Отправить личное сообщение для roborobo Найти все сообщения от roborobo
  № 5  
Ответить с цитированием
roborobo

Регистрация: Sep 2010
Сообщений: 21
КорДум: "лучше пользоваться enterFrame"

А если у меня фреймы не меняются? Я скролл делаю. У меня при наведении курсора на объект меняется положение другого объекта (на N пикселей, каждые 1/m сек).

Старый 22.09.2010, 00:41
stweet вне форума Посмотреть профиль Отправить личное сообщение для stweet Найти все сообщения от stweet
  № 6  
Ответить с цитированием
stweet
 
Аватар для stweet

Регистрация: Mar 2010
Адрес: 54.713862552265084 = 20.442724227905273
Сообщений: 449
Отправить сообщение для stweet с помощью Skype™
"enterFrame" работает от количества кадров, не вариант. Таймер здесь в раз будит.
А в целом КорДум прав.

Старый 22.09.2010, 00:45
roborobo вне форума Посмотреть профиль Отправить личное сообщение для roborobo Найти все сообщения от roborobo
  № 7  
Ответить с цитированием
roborobo

Регистрация: Sep 2010
Сообщений: 21
stweet
Ок. Но все же, как правильно организовать таймер в моем случае? Таймер может генерить event'ы с некоторой периодичностью?

Старый 22.09.2010, 01:00
stweet вне форума Посмотреть профиль Отправить личное сообщение для stweet Найти все сообщения от stweet
  № 8  
Ответить с цитированием
stweet
 
Аватар для stweet

Регистрация: Mar 2010
Адрес: 54.713862552265084 = 20.442724227905273
Сообщений: 449
Отправить сообщение для stweet с помощью Skype™
нет, <<!"enterFrame" работает от количества кадров!>> скинь пример, допишу отдам.

Старый 22.09.2010, 01:06
roborobo вне форума Посмотреть профиль Отправить личное сообщение для roborobo Найти все сообщения от roborobo
  № 9  
Ответить с цитированием
roborobo

Регистрация: Sep 2010
Сообщений: 21
stweet
Ну а какой пример? Пусть будет 2 объекта - button и ... да что угодно, например graphic. При наведении курсора на button, graphic должен смещаться вверх на 2 пикселя каждые 1/20 сек. Вот и весь проект

Старый 22.09.2010, 01:34
stweet вне форума Посмотреть профиль Отправить личное сообщение для stweet Найти все сообщения от stweet
  № 10  
Ответить с цитированием
stweet
 
Аватар для stweet

Регистрация: Mar 2010
Адрес: 54.713862552265084 = 20.442724227905273
Сообщений: 449
Отправить сообщение для stweet с помощью Skype™
Единственное, добавь булевое значение, сори не дописал, не успел. Если что завтро до помогу.

Код AS3:
package {
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.events.TimerEvent;
	import flash.utils.Timer;
 
	public class TestTimerBtn extends Sprite {
 
		private var tmp_btn:Sprite;
		private var tmp_tim:Timer;
		private var n:int;
 
		public function TestTimerBtn ():void {
 
			tmp_btn = new Sprite();
			tmp_btn.graphics.lineStyle(1);
			tmp_btn.graphics.beginFill(0x0000ff, 1);
			tmp_btn.graphics.drawRect(50, 50, 100, 50);
			addChild(tmp_btn);
 
			tmp_btn.addEventListener(MouseEvent.MOUSE_UP, M_BTN1);
			tmp_btn.addEventListener(MouseEvent.MOUSE_OVER, M_BTN2);
 
			tmp_tim = new Timer(100, 0); // Сдесь "100" интервал. "0" количество раз.
 
			tmp_tim.addEventListener(TimerEvent.TIMER, timeOut);
		}
 
		private function M_BTN1(e:MouseEvent):void {
			tmp_tim.start();
		}
 
		private function M_BTN2(e:MouseEvent):void {
			tmp_tim.stop();
		}
 
		private function timeOut(e:TimerEvent):void {
			n ++;
			if (n == 10) {
				trace("Yes");
				n = 0;
			}
		}
	}
}

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

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

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


 


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


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