Retarder l'évènement d'un bouton [Résolu]

Messages postés
10
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
1 novembre 2010
- - Dernière réponse : emfromkraland
Messages postés
10
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
1 novembre 2010
- 14 juin 2010 à 18:35
Bonjour,
Je suis venu très peu dans le coin, mais là, j'ai besoin d'un peu d'aide.

J'aimerai créer un bouton qui déclenche 2 évènements :
1 - la lecture immédiate d'un clip
2 - l'apparition d'un clip, 3 secondes plus tard.

Voilà le code pour l'instant (il manque la fonction retarder l'apparition) :

bt_menu_lacite.onRelease = function () {
_root.sousmenu_vague.gotoAndPlay (2);
_root.sousmenu_lacite._visible = true;
//--- ici, sur l'action précédente, il me faut intégrer le décalage d'apparition
};


Je n'ai aucune connaissance en flash, je bosse en AS2 et j'ai un boulot à rendre lundi.
Toute aide est la bienvenue.

Bonne journée à tous !
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
10
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
1 novembre 2010
3
Merci
Je viens de trouver une solution à l'instant, avant de voir ton message !
Merci de ton aide, voici tout de même le code que j'ai utilisé. Il marche. Il est moche, mais je m'en moque.

stop();
_root.sousmenu_lacite._visible = false;
_root.sousmenu_actualites._visible = false;
_root.sousmenu_lesgaleries._visible = false;
_root.sousmenu_activitesdelacite._visible = false;
_root.sousmenu_ressources._visible = false;
_root.sousmenu_boutique._visible = false;
 
bt_menu_lacite.onRelease = function () {
_root.sousmenu_vague.gotoAndPlay (2);
    setTimeout (function ()
    {
    _root.sousmenu_lacite._visible = true;
_root.sousmenu_actualites._visible = false;
_root.sousmenu_lesgaleries._visible = false;
_root.sousmenu_activitesdelacite._visible = false;
_root.sousmenu_ressources._visible = false;
_root.sousmenu_boutique._visible = false;
    }, 500);
};

bt_menu_actualites.onRelease = function () {
_root.sousmenu_vague.gotoAndPlay (2);
    setTimeout (function ()
    {
    _root.sousmenu_lacite._visible = false;
_root.sousmenu_actualites._visible = true;
_root.sousmenu_lesgaleries._visible = false;
_root.sousmenu_activitesdelacite._visible = false;
_root.sousmenu_ressources._visible = false;
_root.sousmenu_boutique._visible = false;
    }, 500);
};

bt_menu_lesgaleries.onRelease = function () {
_root.sousmenu_vague.gotoAndPlay (2);
    setTimeout (function ()
    {
    _root.sousmenu_lacite._visible = false;
_root.sousmenu_actualites._visible = false;
_root.sousmenu_lesgaleries._visible = true;
_root.sousmenu_activitesdelacite._visible = false;
_root.sousmenu_ressources._visible = false;
_root.sousmenu_boutique._visible = false;
    }, 500);
};

bt_menu_activitesdelacite.onRelease = function () {
_root.sousmenu_vague.gotoAndPlay (2);
    setTimeout (function ()
    {
    _root.sousmenu_lacite._visible = false;
_root.sousmenu_actualites._visible = false;
_root.sousmenu_lesgaleries._visible = false;
_root.sousmenu_activitesdelacite._visible = true;
_root.sousmenu_ressources._visible = false;
_root.sousmenu_boutique._visible = false;
    }, 500);
};

bt_menu_ressources.onRelease = function () {
_root.sousmenu_vague.gotoAndPlay (2);
    setTimeout (function ()
    {
    _root.sousmenu_lacite._visible = false;
_root.sousmenu_actualites._visible = false;
_root.sousmenu_lesgaleries._visible = false;
_root.sousmenu_activitesdelacite._visible = false;
_root.sousmenu_ressources._visible = true;
_root.sousmenu_boutique._visible = false;
    }, 500);
};

bt_menu_boutique.onRelease = function () {
_root.sousmenu_vague.gotoAndPlay (2);
    setTimeout (function ()
    {
    _root.sousmenu_lacite._visible = false;
_root.sousmenu_actualites._visible = false;
_root.sousmenu_lesgaleries._visible = false;
_root.sousmenu_activitesdelacite._visible = false;
_root.sousmenu_ressources._visible = false;
_root.sousmenu_boutique._visible = true;
    }, 500);
};

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 204 internautes nous ont dit merci ce mois-ci

Commenter la réponse de emfromkraland
Messages postés
1313
Date d'inscription
jeudi 16 juillet 2009
Statut
Membre
Dernière intervention
20 juin 2014
6
0
Merci
Hello,

la solution est toute simple ; il faut que tu utilises getTimer() et setInterval() :

//tu déclares une variable qui te permettra
//plus tard de pister les 3 secondes
var PisteDecalage:Number;

//tu crées une fonction qui s'exécutera à chaque intervalle lors de l'appui sur le bouton
//et qui spécifies que si la variable "Time" est 3 secondes plus élevée que "PisteDecalage"
//cela affiche ton clip
function Timing(){
var Time:Number = getTimer();
if(Time >= PisteDecalage + 3000){
//là tu mets ta fonction pour afficher le clip
//et tu arretes l'intervalle
clearInterval(compteur);
}
}

//enfin lors de l'appui sur le bouton tu initialises "PisteDecalage" et tu lances l'intervalle
bt_menu_lacite.onRelease = function(){
sousmenu_vague.gotoAndPlay(2);
sousmenu_lacite._visible = true;
PisteDecalage = getTimer();
compteur = setInterval(Timing, 100);
}


voilà, je n'ai pas testé mais à priori ça devrait marcher. Un détail : par pitié ne mets pas de "_root" dans ton code, c'est juste bon à te créer des problèmes par la suite, utilises le ciblage approprié sans passer par "_root".

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
Commenter la réponse de BBFUNK01