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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 27.06.2007, 11:18
K!ska вне форума Посмотреть профиль Отправить личное сообщение для K!ska Найти все сообщения от K!ska
  № 1  
Ответить с цитированием
K!ska

Регистрация: Mar 2007
Сообщений: 54
По умолчанию двойной щелчок

что нужно написать чтобы событие приходило по двойному щелчку а не по одному нажатию
__________________
в комнате с белым потолком, правом на надежду

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

Регистрация: May 2007
Сообщений: 721
После первого щелчка пусть включается таймер,допустим на пол секунды.и за это время отлавливай ещё одно

Старый 27.06.2007, 12:08
Aziz Zaynutdinoff вне форума Посмотреть профиль Отправить личное сообщение для Aziz Zaynutdinoff Посетить домашнюю страницу Aziz Zaynutdinoff Найти все сообщения от Aziz Zaynutdinoff
  № 3  
Ответить с цитированием
Aziz Zaynutdinoff
 
Аватар для Aziz Zaynutdinoff

Регистрация: Feb 2006
Адрес: Moscow
Сообщений: 552
Как один из вариантов можно так

А вообще – тема обсуждалась неоднократно и очень подробно.

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

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Примерно так:
Код:
function dblClick(){ trace('YES'); }
var lastPressed:Number = 0;
var deltaT:Number = 500; //полсекунды
btn.onPress = function(){
 var t:Number = getTimer();
 if(t - lastPressed < deltaT )dblClick();
 lastPressed  = t;
}
Aziz, на фиг там Delegate и таймауты?


Последний раз редактировалось Kikasso; 27.06.2007 в 12:15.
Старый 27.06.2007, 16:32
Aziz Zaynutdinoff вне форума Посмотреть профиль Отправить личное сообщение для Aziz Zaynutdinoff Посетить домашнюю страницу Aziz Zaynutdinoff Найти все сообщения от Aziz Zaynutdinoff
  № 5  
Ответить с цитированием
Aziz Zaynutdinoff
 
Аватар для Aziz Zaynutdinoff

Регистрация: Feb 2006
Адрес: Moscow
Сообщений: 552
Kikasso,
если обратишь внимание – писал за день до нового года
ну и потом: работает и ладно, поскольку надобности не было – переписывать не стал...

Старый 27.06.2007, 12:31
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Kikasso, а что будет, если я нажму три раза и между ними будет меньше, чем полсекунды?)
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 27.06.2007, 12:43
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 7  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Цитата:
Сообщение от iNils
Kikasso, а что будет, если я нажму три раза и между ними будет меньше, чем полсекунды?)
В данном случае - два 'YES'.
Ну можно lastPressed обнулить после второго щелчка, если настаиваете.
Код:
function dblClick(){
 lastPressed = 0;
 trace('YES, deltaT =' + Math.floor(deltaT));
 deltaT *= .9; //шутка
}
var lastPressed:Number = 0;
var deltaT:Number = 500; //полсекунды
btn.onPress = function(){
 var t:Number = getTimer();
 if(t - lastPressed < deltaT )dblClick();
 else lastPressed  = t;
}
У меня получилось 'YES, deltaT =75'. Быстрее, увы, никак.
upd: переложил палец и получил 67.


Последний раз редактировалось Kikasso; 27.06.2007 в 12:59.
Создать новую тему Ответ Часовой пояс GMT +4, время: 18:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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