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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 09.01.2009, 04:08
root.Unknown вне форума Посмотреть профиль Отправить личное сообщение для root.Unknown Найти все сообщения от root.Unknown
  № 1  
Ответить с цитированием
root.Unknown

Регистрация: Dec 2008
Сообщений: 20
По умолчанию Rotate Mouse and Button

Всем привет, у меня возникла проблема с мышью и кнопкой в одном мувиклипе. В общем в мувиклипе находится кнопка "Auto Rotate" по нажатию на которую происходит автоматическое вращение объекта во круг своеи оси, сам объект подгружаеться с внешнего файла в этот же мувиклип и наконец, его так же можно крутить с помощью мыши.

Проблема заключаеться в следующем:
Я могу вращать мышью объект во круг своеи оси, но когда нажимаю по кнопке Auto Ratate, объект не вращаеться автоматически, так же существуют другие кнопки в том же мувиклипе, например увиличение и уменьшение объекта, когда клацаю по кнопке увеличения то объкт увеличивается на +2 и в то же время прокручиваеться немного )))

Вопрос:
Как сделать так чтобы можно было нажимать по кнопкам в мувиклипе но объект не прокручивался из-за клика мыши, если это как-то сделать, то тогда и кнопка Auto Rotate должна работать...

Привожу код:
Код AS3:
// Управление объектом кнопками в MovieClip
hmBtn.addEventListener(MouseEvent.MOUSE_DOWN,moveCube); // Кнопка
 
// Вращения объекта мышью в MovieClip
stage.addEventListener( MouseEvent.MOUSE_DOWN, downHandler );
stage.addEventListener( MouseEvent.MOUSE_UP, upHandler );
addEventListener( Event.ENTER_FRAME, enterFramePress );
 
// Функция на автоматическое вращения объекта (Нажатие по кнопке)
function moveCube(event:MouseEvent):void {
if (this.hasEventListener(Event.ENTER_FRAME)) {
this.removeEventListener(Event.ENTER_FRAME,enterFrameHandlerMove);
} else {
this.addEventListener(Event.ENTER_FRAME,enterFrameHandlerMove);
}
}
function enterFrameHandlerMove(event:Event):void {
pot.pan+= 2;
scene.render();
}
 
// Функции на вращения объекта если moving true или false
private function downHandler( e:Event ) {
moving = true;
}
private function upHandler( e:Event ) {
moving = false;
}
 
// Функция на вращения объекта мышью во круг своеи оси
private function enterFramePress( event : Event ):void {
if ( moving ) {
pot.rotateY += ( mouseX - 350 )/80;
scene.render();
}
Добавлено через 23 часа 26 минут
Неужели никто не знает как справиться с этой задачей?
Может существует какой-то метод, например если навести указатель мыши на кнопку, то функция enterFramePress() перестает действовать, чтобы можно было нажать по кнопке и выполнить какуе-то задачу. Потом когда уводешь мышь с кнопки все возвращаеться на свои места, то есть функция enterFramePress() уже действует, если клацать мышью в любом месте окна, кроме кнопок.
Подскажите что-то хоть кто нибудь...


Последний раз редактировалось root.Unknown; 10.01.2009 в 03:36.
Создать новую тему Ответ Часовой пояс GMT +4, время: 23:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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