begin process at 2012 05 26 04:07:21
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > DOUBLE CLICK / CLIQUE

DOUBLE CLICK / CLIQUE


 Information sur la source

Note :
Aucune note
Catégorie :Divers Classé sous :clique, souris Niveau :Débutant Date de création :08/08/2005 Vu :9 255

Auteur : Slagt

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note


 Description

Dans cette source vous trouverez le code nécessaire pour gérer correctement un double click. C'est à dire :

- Gestion du double click.
- Gestion du click long (laissé enfoncer longtemps puis lâché).
- Gestion du click simple.
- le click simple n'est pas appellé si c'est un double click.

Quelques explications rapide, si vous prenez la source telle quelle, les fonctions seront appellés à chaque click de souris. Si vous voulez par exemple, limité le double click sur un CLIP, il vous suffit de faire ces quelques modifications :

- remplacer "onMouseDown" par "MovieClip.onPress"
- remplacer "onMouseUp" par "MovieClip.onRelease"

Pensez biensûr à remplacer MovieClip par l'occurence de votre CLIP.

Source

  • /* Toutes les variables/fonctions/et autres ont pour préfixe "DC_" non pas pour vous faire chier, mais uniquement pour vous éviter d'avoir un nom de variable ou de fonction identique aux miens. */
  • /* Pensez à modifier "DC_DC_Latence", "DC_C_Latence" et "DC_C_Verification" comme vous l'entendez. Personnellement je les ai réglé comme je le pensais mais peut-être que ça ne vous conviendra pas. */
  • DC_nbClick = 0; // Ne pas toucher
  • DC_DC_Latence = 300; // Temps maximum autorisé pour le double click entre le moment ou on baisse le bouton pour la première fois, et ou on le relâche la deuxième fois [ millisecondes ]
  • DC_C_Latence = 300; // Temps au bout du quel si l'utilisateur n'a pas relâcher le bouton, le click sera considéré comme long [ millisecondes ]
  • DC_C_Verification = 150; // Temps maximum autorisé entre les deux cliques [ millisecondes ]
  • // Pour limiter le double click à un CLIP, remplacer "onMouseDown" par "MovieClip.onPress"
  • onMouseDown = function ()
  • {
  • if (DC_nbClick == 0)
  • DC_DATEx = DC_whatTime();
  • DC_nbClick ++;
  • }
  • // Pour limiter le double click à un CLIP, remplacer "onMouseUp" par "MovieClip.onRelease"
  • onMouseUp = function ()
  • {
  • var DC_d = (DC_whatTime() - DC_DATEx);
  • if (DC_nbClick == 2 && DC_d < DC_DC_Latence)
  • {
  • DC_nbClick = 0;
  • // ACTION ---
  • trace ("Double Click");
  • // --- ACTION
  • return;
  • }
  • if (DC_nbClick == 1 && DC_d >= DC_C_Latence)
  • {
  • DC_nbClick = 0;
  • // ACTION ---
  • trace ("Long Click");
  • // --- ACTION
  • return;
  • }
  • else if (DC_nbClick == 1 && DC_d < DC_C_Latence)
  • {
  • DC_IDespaceClick = setInterval (DC_espaceClick, DC_C_Verification);
  • return;
  • }
  • }
  • // Fonction vérifiant s'il y a eut ou non un double click. S'il n'y en a pas eut, alors ça signifie que c'est un simple click.
  • function DC_espaceClick ()
  • {
  • if (DC_nbClick == 1)
  • {
  • DC_nbClick = 0;
  • // ACTION ---
  • trace ("Simple Click");
  • // --- ACTION
  • }
  • clearInterval (DC_IDespaceClick);
  • }
  • // Fonction donnant le nombre de millisecondes écoulées depuis le 1er Janvier 1970 à 00:00 (outil de comparaison) ;)
  • function DC_whatTime ()
  • {
  • var DC_date = new Date ();
  • DC_date = DC_date.getTime ();
  • return DC_date;
  • }
/* Toutes les variables/fonctions/et autres ont pour préfixe "DC_" non pas pour vous faire chier, mais uniquement pour vous éviter d'avoir un nom de variable ou de fonction identique aux miens. */
/* Pensez à modifier "DC_DC_Latence", "DC_C_Latence" et "DC_C_Verification" comme vous l'entendez. Personnellement je les ai réglé comme je le pensais mais peut-être que ça ne vous conviendra pas. */

DC_nbClick = 0;							// Ne pas toucher
DC_DC_Latence = 300;						// Temps maximum autorisé pour le double click entre le moment ou on baisse le bouton pour la première fois, et ou on le relâche la deuxième fois [ millisecondes ]
DC_C_Latence = 300;						// Temps au bout du quel si l'utilisateur n'a pas relâcher le bouton, le click sera considéré comme long [ millisecondes ]
DC_C_Verification = 150;					// Temps maximum autorisé entre les deux cliques [ millisecondes ]

// Pour limiter le double click à un CLIP, remplacer "onMouseDown" par "MovieClip.onPress"
onMouseDown = function ()
{
	if (DC_nbClick == 0)
		DC_DATEx = DC_whatTime();
	
	DC_nbClick ++;
}

// Pour limiter le double click à un CLIP, remplacer "onMouseUp" par "MovieClip.onRelease"
onMouseUp = function ()
{
	var DC_d = (DC_whatTime() - DC_DATEx);
	
	if (DC_nbClick == 2 && DC_d < DC_DC_Latence)
	{
		DC_nbClick = 0;
		
		// ACTION ---
		trace ("Double Click");
		// --- ACTION
		
		return;
	}
	
	if (DC_nbClick == 1 && DC_d >= DC_C_Latence)
	{
		DC_nbClick = 0;
		
		// ACTION ---
		trace ("Long Click");
		// --- ACTION
		
		return;
	}
	else if (DC_nbClick == 1 && DC_d < DC_C_Latence)
	{
		DC_IDespaceClick = setInterval (DC_espaceClick, DC_C_Verification);
		return;
	}
}

// Fonction vérifiant s'il y a eut ou non un double click. S'il n'y en a pas eut, alors ça signifie que c'est un simple click.
function DC_espaceClick ()
{
	if (DC_nbClick == 1)
	{
		DC_nbClick = 0;
		
		// ACTION ---
		trace ("Simple Click");
		// --- ACTION
	}
	
	clearInterval (DC_IDespaceClick);
}

// Fonction donnant le nombre de millisecondes écoulées depuis le 1er Janvier 1970 à 00:00 (outil de comparaison) ;)
function DC_whatTime ()
{
	var DC_date = new Date ();
	DC_date = DC_date.getTime ();
	
	return DC_date;
}



 Sources du même auteur

Source avec Zip CHAMP DE VISION AVEC OBSTACLE ET CIBLE À TROUVER
Source avec Zip Source avec une capture DÉFORMATION D'IMAGE BITMAP EN AS
Source avec Zip Source avec une capture MENU MAC OSX - DOCK
Source avec Zip SIMULATEUR DE FAUTES DE FRAPPES
Source avec Zip CLIQUE DROIT > ENREGISTRER L'IMAGE SOUS ...

 Sources de la même categorie

AS3 - CHARGER UNE IMAGE EXTERNE, L'UTILISER PLUSIEURS FOIS (... par SuperChouquette
Source avec Zip Source avec une capture PHP COUNTER EVOLUTION par top30
Source avec Zip DISTRIBUTION D'OBJETS par top30
Source avec Zip Source avec une capture MULTI-DEBRID par remy2501
Source avec Zip Source avec une capture MODE CONSOLE DE LINUX par tipharris

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture TOURNER UN OBJEC VERS LA SOURIS... par top30
Source avec Zip SUPER TWEEN PACKAGE par Acidchlorhydrik
Source avec Zip POINTEUR PERSO AS3 par tranber78
Source avec Zip Source avec une capture JEU ARCADE TRIEZ LES BOULES! par Voroz
Source avec Zip DISPARITION SUR CLIQUE PUIS RÉAPARITION par socomajor

Commentaires et avis

Commentaire de mric1988 le 09/08/2005 10:15:38

merci beaucoup ça ve énormément me servir ;)

Commentaire de dark_diablo09 le 13/10/2005 09:01:13

Excuser moi, mais pourquoi le double click ne s'applique que sur le text de mon bouton? :'( Je ne comprend pas... (bon j'avoue que je suis nul en code donc qqch. m'a surment échappé)

Commentaire de pUnKsPiRiT le 30/10/2005 21:40:20

Merci bien, j'ai réutilisé une partie de ton code pour m'en faire une classe AS2 et ça marche nickel. Attention tout de même :
Dans "onMouseUp = function () ...", si aucune condition n'est vérifiée, il ne se passe rien et lorsqu'on clique une nouvelle fois, DC_nbClick devient supérieur à 2 et là, il se passe plus rien, DC_nbClick continue simplement à être incrémenté... il ne se passe rien dans le cas où il y aurait  quelque chose d'anormal.
J'ai juste rajouté comme comportement par défaut
   DC_nbClick = 0;
   //et après l'appel à l'action à effectuer pour un simple clic

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

tracer un trait ?? [ par Niaki ] Bonjour à tous,Alors voila, tout le monde connait le jeu line rider, lorsqu'on clique et qu'on reste appuyé on bouge la souris et sa dessine un trait Controle de la rotation longitudinale d'un objet par la position de la souris [ par flatcedrik ] Bonjour,Je dispose d'une série de photographie d'un objet constituant une rotation longitudinale complete de ce dernier.Mon but est de pouvoir faire t menu déroulant [ par camillefly ] Bonjour a tous, je suis en train de créer un site et je fais un menu horizontal avec sous-menus déroulants quand on clique sur chaque rubrique, j'ai c pointeur qui suis la souris comment limiter la zone de déplacement [ par pacosxm ] comment limiter la zone de déplacement du pointeur qui suit la souris : si le document fais 700 px, mais je veux que mon pointeur ne suive ma souris Retarder la lecture d'une animation apres rollout en "actionscript" pour un menu [ par sargame ] Bonjour à tous,Voila j'ai un petit souci et besoin de votre aide, comme vous avez pu le deviner, je suis nouveau né en actionscript pour posez ce genr Clip sur bouton abaissé [ par Chanmy ] Bonjour,Débutant sur Flash, je coince sur un bouton avec lequel je veux simplement qu'une animation se lance quand je clique dessus.J'ai crée l'animat action de la souris sur une roue (as3) [ par Psylocybe ] bonjour tous le monde,J'essaye désepérement de trouver le code qu'il me faut pour faire tourner une roue en fonction de la position de la souris,la se Changement d'image en passant la souris sur un bouton [ par dav40 ] Bonjour,je suis à la recherche d'un script pour afficher des images en passant le souris sur différents bouton.Voici ce que j'ai:           &lt;p&gt;& lecteur flv et fond sonore [ par hazou ] Bonjourje suis novice en flash cs4 et j'aurais une question assez urgente ; je prépare un site pour l'anniversaire de ma femme et j'ai mis nos vidéos SAUVEZ UNE NULLE!!!!! [ par crystalady94 ] BonjourJe suis novice je viens de mettre un site en ligne via LAUYANJe voudrais l'animer un peu mettre des effets quand on bouge la souris mais voilà


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,061 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales