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

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

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

Регистрация: Jul 2009
Сообщений: 2
Question Имитация клика на кнопке

Доброго здравия!

Проблема в следующем. Во флеш имеется кнопка Bt1 (соотв. классу SimpleButton), а так же код, реагирующий на нажатие:
Код AS3:
Bt1.addEventListener(MouseEvent.MOUSE_DOWN, clickHandler);
function clickHandler(event:MouseEvent = null):void {
  // что-то делаем
}
Далее где-то в коде необходимо создать событие клика на нашей кнопке (т.е. имитировать нажатие). Код, приведенный ниже почему-то не запускает обработчик события clickHandler:
Код AS3:
try {
	var evt = new MouseEvent(MouseEvent.MOUSE_DOWN);
	Bt1.dispatchEvent(evt);
} catch (error) {
	trace('Не получается: ' + error.message);
}
Соответственно вопрос: ПОЧЕМУ?

Старый 17.07.2009, 17:41
WRC_S вне форума Посмотреть профиль Отправить личное сообщение для WRC_S Посетить домашнюю страницу WRC_S Найти все сообщения от WRC_S
  № 2  
Ответить с цитированием
WRC_S
[+6 23.11.09]
 
Аватар для WRC_S

Регистрация: Jun 2009
Адрес: Россия
Сообщений: 318
Отправить сообщение для WRC_S с помощью ICQ
Я тоже узнал хочю как можно сделать имитацию клика мышки или других событий мыши?

Старый 17.07.2009, 18:55
ldimat вне форума Посмотреть профиль Отправить личное сообщение для ldimat Найти все сообщения от ldimat
  № 3  
Ответить с цитированием
ldimat
[+1.3 20.07.09]

Регистрация: Jun 2009
Сообщений: 29
Записей в блоге: 1
выполни 2 отдельно пункта плз:
1. в обработчике напиши Bt1.visible = false; и нажму рукой - кнопка должна исчезнуть, если нет - не туда или не то цепляешь
2. вместо диспатча тоже напиши Bt1.visible = false; - если в момент когда оно долно вызватся не исчезнит кнопка - знач или ссылка на кнопку битая, или метод не вызывается

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

Старый 17.07.2009, 20:36
musat вне форума Посмотреть профиль Отправить личное сообщение для musat Найти все сообщения от musat
  № 4  
Ответить с цитированием
musat
 
Аватар для musat

Регистрация: Jul 2007
Адрес: Дубна, Моск.обл.
Сообщений: 108
Код AS1/AS2:
Bt1.addEventListener(MouseEvent.MOUSE_DOWN, clickHandler);
function clickHandler(event:MouseEvent = null):void {
  // что-то делаем
}
 
clickHandler();

Старый 19.07.2009, 15:39
Малыш вне форума Посмотреть профиль Отправить личное сообщение для Малыш Найти все сообщения от Малыш
  № 5  
Ответить с цитированием
Малыш

Регистрация: Jul 2009
Сообщений: 2
Сорри, все работает. В другом была ошибка...
Всем спасибо!

Старый 19.07.2009, 15:57
WRC_S вне форума Посмотреть профиль Отправить личное сообщение для WRC_S Посетить домашнюю страницу WRC_S Найти все сообщения от WRC_S
  № 6  
Ответить с цитированием
WRC_S
[+6 23.11.09]
 
Аватар для WRC_S

Регистрация: Jun 2009
Адрес: Россия
Сообщений: 318
Отправить сообщение для WRC_S с помощью ICQ
напиши свой работующий код?

Старый 19.07.2009, 20:40
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 7  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
В Tips&Tricks был вызов обработчика без событий, поможет.

Старый 20.07.2009, 01:47
AL.exe вне форума Посмотреть профиль Отправить личное сообщение для AL.exe Посетить домашнюю страницу AL.exe Найти все сообщения от AL.exe
  № 8  
Ответить с цитированием
AL.exe
 
Аватар для AL.exe

Регистрация: Jan 2004
Адрес: Net
Сообщений: 1,049
Отправить сообщение для AL.exe с помощью ICQ
Вот никогда не понимал, зачем нужно имитировать клики (таких тем на флешере полно).

Имхо, ошибка в архитектуре.
__________________
Дело не в тебе

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

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

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


 


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


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