![]() |
|
||||||||||
|
|||||
|
Мне интересно, почему в ActionScript2 не создали стандартный
Class DoubleClick. В поисковике на форуме нечего путного не нашел Решил исправить этот недочет, написал свой. Первый для CS3. Второй для 8.флеш. _______________________ Правильно заданный вопрос, дает быстрый ответ. Последний раз редактировалось Vektor; 31.05.2008 в 22:06. |
|
|||||
|
Регистрация: May 2008
Сообщений: 476
|
Vektor! fla файл неоткрывается. Видимо Вы писали в Adobe CS3?
А что этот класс делает?! Если он реализует одинарный ,двойной клик итд, это можно реализовать и так: var ID:Number=0;
var clickNum:Number=0;
myClip.onPress = function():Void
{
clickNum++;
if (ID==0) ID=setInterval(myFunc,200);
}
function myFunc():Void
{
clearInterval(ID);
ID=0;
switch (clickNum)
{
case 1: {действия при 1 клике; break;}
case 2: {действия при 2-м клике; break;}
....
}
clickNum=0;
}
Последний раз редактировалось Alex_beginner; 31.05.2008 в 13:43. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Vector, a так не проще?
class DoubleClick {
private var wait:Boolean = false;
private var _interval:Number = null;
public function ifDouble(f:Function, t:Number):Void {
t = t ? t : 300;
if (wait) {
f();
clearInt();
} else {
_interval = setInterval(this, "dc", t);
wait=true;
}
}
private function dc():Void {
wait ? clearInt() : !!wait;
}
private function clearInt ():Void {
clearInterval(_interval);
_interval = null;
wait=false;
}
}
__________________
Reality.getBounds(this); Последний раз редактировалось Wolsh; 31.05.2008 в 15:14. |
|
|||||
|
Регистрация: May 2008
Сообщений: 476
|
Wolsh!
Цитата:
1. Где Вы вообще видите вопрос?! Когда человек поделился, созданным им классом! 2. А на счет двойного щелчка - весь форум "пропитан" этими постами, и тема, собственно, не актуальна. http://flasher.ru/forum/showthread.php?threadid=62551 3. Класс создается с определенной целью. В данном случае для отслеживания события двойного щелчка. Однако, ту же самую функцию может выполнить "прямой" код. Вы забыли зачем вообще было введено понятие "класс". Почитайте произведение Вашего кумира - Колина Мука ("ActionScript 2.0. Основы"). Он прекрасно и точно описывает это понятие. Ну например, в Вашем классе нет конструктора. ![]() Удачи в изучении! Последний раз редактировалось Alex_beginner; 31.05.2008 в 16:28. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Понятие класс было введено (
) чтобы не писать этот пинг-понг в обработчики событий для 30 кнопок. Я даже представить себе не могу, что за мешанина получится при использовании Вашего "прямого" (надеюсь этот эпитет - шутка) кода в таком далеко не самом экстремальном случае (у меня был проект с 2000 кликабельных клипов).
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: May 2008
Сообщений: 476
|
Цитата:
![]() Но увы! Никакой мешанины не будет, если грамотно перестроить код под свои цели. А чем Вам слово "прямой" код непонравилось. Предложите другой термин для этого кода, я при разговоре с Вами буду пользоваться им для улучшения понимания. Ну ладно. Это все лирика. Вы ответьте на вопрос у Вас в классе должен быть конструктор или нет? А то че то ваш код неработает, а почему немогу разобраться. Поможите плиз! iNils! Вопрос нужен ли конструктор здесь или нет!? Я думаю нужен. Последний раз редактировалось iNils; 31.05.2008 в 16:55. |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
|
Alex_beginner, когда хотите что-то добавить, используйте кнопку
, а не занимайтесь мультипостингом.Мне код обоих не нравится. Поэтому, нужен там конструктор или нет, не важно. Все равно не гуд. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Вы имя функции поставьте как в классе, я его поменял.
Класс не у меня. Я только прорефакторил код. Меня он не устраивает. И отсутствием конструктора в том числе. В таком виде это одноразовый класс))))
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: May 2008
Сообщений: 476
|
iNils! Я извиняюсь и исправляюсь.
Vektor! 1. Я давал Вам примерную ссылку. Ранее я указал, что весь форум "пропитан" такими темами. Если Вы не умеете пользоваться поиском, так учитесь. Кстати ссылка была из раздела "... для профессионалов". Делайте выводы. Цитата:
2. Давайте не будем голословными. А то сказать, что "нравиться" или "не нравится" легко, а вот доказать свои слова гораздо труднее. Поэтому я спрошу: "Мой код не работает или работает?". Ежели он работает, то я свою функцию выполнил, худо, бедно , но выполнил. Если же нет, докажите. 3. Ваш код написан "ленивыми лексемами", т.е. используете всякие там "?",":", вместо if..{} - все это сильно ухудшает читабельность кода. Это не факт, это больше, чем факт - так оно и есть на самом деле. Последний раз редактировалось Alex_beginner; 01.06.2008 в 11:09. |
![]() |
![]() |
Часовой пояс GMT +4, время: 07:38. |
|
|
« Предыдущая тема | Следующая тема » |
|
|