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

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

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

Регистрация: Jan 2010
Сообщений: 187
Question Увеличение счётчка при нажатии мыши.

Хотел сделать, чтобы когда зажимается кнопка мыши - на экране идёт увеличение счётчика. Когда кнопка отпускается - счётчик обнуляется.
Наворотил вот такую конструкцию:
Код AS3:
public class Test extends MovieClip {
 
		public var jump:int=0;
 
		public function Test() {
 
			stage.addEventListener(MouseEvent.MOUSE_DOWN,KeyMouseOn);
			stage.addEventListener(MouseEvent.MOUSE_UP,KeyMouseOff);
 
		}
 
 
		private function KeyMouseOn(evt:MouseEvent):void {
 
			addEventListener(Event.ENTER_FRAME, jumpCounter);
		}
 
 
		private function jumpCounter(evt:MouseEvent):void {
 
			jump+=1;
			myTxtField.text=""+jump;
		}
 
 
		private function KeyMouseOff(evt:MouseEvent):void {
 
			removeEventListener(Event.ENTER_FRAME, jumpCounter);
			jump = 0;
		}
	}
}
На сцене из одного кадра только динамическое текстовое поле с Instance name "myTxtField".
Не работает.
Выдаёт ошибку:
Error #1034: Ошибка типа Coercion: невозможно преобразовать flash.events::Event@24eda8e1 в flash.events.MouseEvent.
Подскажите, где я чего упустил?
А может быть это всё совсем по-другому делается?

(исходник на всякий случай прилагаю)
Вложения
Тип файла: zip Test.zip (6.3 Кб, 40 просмотров)

Старый 28.05.2010, 00:25
nOobCrafter вне форума Посмотреть профиль Отправить личное сообщение для nOobCrafter Найти все сообщения от nOobCrafter
  № 2  
Ответить с цитированием
nOobCrafter

Регистрация: Nov 2008
Сообщений: 894
Записей в блоге: 1
Код AS3:
	addEventListener(Event.ENTER_FRAME, jumpCounter);
 
		private function jumpCounter(evt:MouseEvent):void { << Почему MouseEvent?

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

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Вы бы сами текст ошибки почитали что ли?
Цитата:
private function jumpCounter(evt:MouseEvent):void {

jump+=1;
myTxtField.text=""+jump;
}
Вот тут ошибка - evt должно быть Event, а не MouseEvent, потому как
Код AS3:
addEventListener(<b>Event b> .ENTER_FRAME, jumpCounter);
__________________
...вселенская грусть

Старый 28.05.2010, 11:08
In8Finity вне форума Посмотреть профиль Отправить личное сообщение для In8Finity Найти все сообщения от In8Finity
  № 4  
Ответить с цитированием
In8Finity

Регистрация: Jan 2010
Сообщений: 187
Спасибо. Действительно, всё просто оказалось.

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

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

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


 


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


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