begin process at 2012 05 27 22:51:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Flash

 > 

Archives

 > 

ActionScript

 > 

Transformer un movieClip en boutton


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Transformer un movieClip en boutton

lundi 14 mars 2005 à 14:33:52 | Transformer un movieClip en boutton

MaX3315

Membre Club

Bonjour,

Je souhaite créer à la volée des movieClip cliquables, en d'autre terme des buttons.

Il s'agit de charger une liste de langue dynamiquement dans un fichier XML (ca c fait) puis de construire une barre contenant tout les drapeux des langues disponibles, voici le code pour cette partie :

for(j=0 ; j<_global.VALID_LANGUAGES.length ; j++)
{

  my_mc.createEmptyMovieClip('mc_flag_'+j,j+10);
 // chargement de l'image JPG
  var nom='flag/'+_global.VALID_LANGUAGES[j][0]+'.jpg';
  my_mc['mc_flag_'+j].loadMovie(nom);
   //// maintenant on transforme le clip en bouton:
 Object.registerClass(my_mc['mc_flag_'+j], Button);
 my_mc['mc_flag_'+j].enabled=true;
 my_mc['mc_flag_'+j].useHandCursor = true;
 my_mc['mc_flag_'+j]._alpha=50;
   //evenement associe...
 my_mc['mc_flag_'+j].mouseOver = function() {  my_mc['mc_flag_'+j]._alpha=100; }
 my_mc['mc_flag_'+j].mouseOut = function() {  my_mc['mc_flag_'+j]._alpha=50; }
 my_mc['mc_flag_'+j].onRelease = function() { trace('Hit on '); } //+_global.VALID_LANGUAGES[j][0]); }

// positionnement
 my_mc['mc_flag_'+j]._x=40+j*35;
 my_mc['mc_flag_'+j]._y=40;
}

En rouge j'ai mis la ligne de code qui me semblait être la solution pour convertir à la volée un MC en button, afin de pouvoir associer des évenements mouseOver, mouseOut et onRelease....

MAis pour l'instant aucun évènement ne fonctionne.

L'affichage des drapeux et leur positionnement est correct.

Merci de m'aider...

lundi 14 mars 2005 à 15:56:30 | Re : Transformer un movieClip en boutton

John_Doe_88

Pqoi tu tiens a convertir tes clips en bouton ? A mon avis tu te casses la tête pour rien parce que il suffit de faire un clip contenant un bouton et de dupliquer ce clip.
lundi 14 mars 2005 à 16:02:54 | Re : Transformer un movieClip en boutton

MaX3315

Membre Club
Heu...

La je vois pas trop ta solution.
CAr chaque bouton à une autre image (drapeau d'un pays)...
lundi 14 mars 2005 à 16:09:37 | Re : Transformer un movieClip en boutton

John_Doe_88

Ben dans ton bouton tu mets un clip destiné à recevoir l'image.
lundi 14 mars 2005 à 16:18:20 | Re : Transformer un movieClip en boutton

MaX3315

Membre Club

Donc si j'ai bien compris je garde ma boucle sur mon tableau de lang

et poiur chaqune d'entre elle je fait

 duplicate... (monBouton)
monButton.onrelease = function() { ... }
monButton.createEmtyMovieClip('toto',...)
monButton.toto.loadMovie('url');


C'est cà l'idée?



Merci de te pencher sur la question.

lundi 14 mars 2005 à 16:29:52 | Re : Transformer un movieClip en boutton

John_Doe_88

Oui tres grossierement c ca. Juste :
-> perso je prefere attachMovie a duplicateMovieClip, mais bon c comme tu veux.
-> tu as un clip qui contient un  bouton qui contient un clip, donc attention au ciblage
-> tu peux creer ton clip toto en statique
lundi 14 mars 2005 à 17:08:39 | Re : Transformer un movieClip en boutton

MaX3315

Membre Club
C'est bon ca fonctionne....
(un nouveau clip colle au boutton instancie)

Merci à toi et aussi à Orphy sur le chat ...

vendredi 8 avril 2005 à 13:31:37 | Re : Transformer un movieClip en boutton

cyberval

Salut, alors voila comme tu as l'air davoir résolu le probléme ben je voulais savoir si il etais possible que tu m'envoies le code correspondant car moi ji arrive pas.... en fait ce que je voudrais c'est le code dans la boucle for correspondant aux étapes suivantes :
 --> duplicate... (monBouton)
 --> monButton.onrelease = function() { ... }
 --> monButton.createEmtyMovieClip('toto',...)
 --> monButton.toto.loadMovie('url');
 
Merci beaucoup !!
lundi 11 avril 2005 à 09:30:28 | Re : Transformer un movieClip en boutton

MaX3315

Membre Club

Bonjour,

voici ce que j'ai bricolé au final, c'est peut être pas ce qu'il y a d'ideal mais ca fonctionne donc voilà :

--------------------------------------------------------------
for(j=0 ; j<_global.VALID_LANGUAGES.length ; j++)
{
  var nom='flag/'+_global.VALID_LANGUAGES[j][0]+'.jpg';  //  truc du style '/flag/US.jpg'
  my_mc.createEmptyMovieClip('mc_flag_'+j,j+100);

   //on creer un rectangle plein d'abord
   my_mc['mc_flag_'+j].beginFill(0xff0000,0);
   my_mc['mc_flag_'+j].lineStyle(2,0x000000,100);
   my_mc['mc_flag_'+j].moveTo(0,0);
   my_mc['mc_flag_'+j].lineTo(30,0);
   my_mc['mc_flag_'+j].lineTo(30,20);
   my_mc['mc_flag_'+j].lineTo(0,20);
   my_mc['mc_flag_'+j].lineTo(0,0); 
   my_mc['mc_flag_'+j].codeLang=_global.VALID_LANGUAGES[j][0];
  //on charge le drapeu

 //on associe a ce rectangle plein un nouveau clip contenant cette fois l'image
 my_mc['mc_flag_'+j].createEmptyMovieClip('mc_flag_img_'+j,this.j+50);
 my_mc['mc_flag_'+j]['mc_flag_img_'+j].loadMovie(nom);

//// maintenant on transforme le clip en bouton:
  //evenement associe...
  if(_global.CURRENT_LANGUAGE==_global.VALID_LANGUAGES[j][0])
  {
   my_mc['mc_flag_'+j]._alpha=100;
  } else {
   my_mc['mc_flag_'+j]._alpha=50;
  }
//gestion du ROLL OVER et ROLL OUT
my_mc['mc_flag_'+j].onRollOver  = function() {  this._alpha=100; }
 my_mc['mc_flag_'+j].onRollOut = function() {
   this._alpha=50;
   if(this.codeLang==_global.CURRENT_LANGUAGE)
   { this._alpha=100; } else { this._alpha=50; }
  }
//gestion de l'action
 my_mc['mc_flag_'+j].onRelease = function() {  
   //il s'agit a partir du nom du movie clip qui se termine par mc_flag_<num>
   var codeLang=-1
   for(kk=0 ; kk<_global.VALID_LANGUAGES.length ; kk++)
   {
    my_mc['mc_flag_'+kk]._alpha=50;
    if((new String(this)).indexOf('mc_flag_'+kk)>0)
    {
     //trace('Changement de langue vers >> '+_global.VALID_LANGUAGES[kk][0]);
     codeLang=_global.VALID_LANGUAGES[kk][0];
    }
   }
   if(codeLang!=-1) { _global.changementDeLangue(codeLang,this); }
   else { trace('Error : language not avaible!'); }
  }

 my_mc['mc_flag_'+j]._x=j*35;
 my_mc['mc_flag_'+j]._y=0;
}
--------------------------------------------------------------
NB _global.VALID_LANGUAGES est un tableau à deux dimensions contenant une liste de langue (code international et nom usuel)

Voilà je pense qu'il y a assez de commentaires pour comprendre ce que j'ai bricolé...



Cette discussion est classée dans : mc, alpha, my, movieclip, flag


Répondre à ce message

Sujets en rapport avec ce message

texte externe dans un MC [ par frelon1977 ] je veut loader un fichier .txt dans un movieClip de mon swf, normalement j'écrirais loadVariablesNum("news.txt", 0) mais cela fonctionne seulement qua création dynamique de movieClip (MEGA URGENT SVP) [ par juju2chaussette ] Salut à tous,voilà plusieurs jours que je bloque sur un problème (que j'éspère certains d'entre vous ont déjà rencontré et résolu)!!Je pars d'un fichi Transition alpha, avec boutons... [ par Shenron42000 ] Salut à tous... Voila le souci, j'ai un movieclip "clip", dans lequel se charge un .swf lorsque l'on clique sur un bouton (eux dans un autre moviecli Preload d'un LoadClip avec MovieClip en attente.. [ par syndrael ] Bonjour, Je voudrais lancer un Movieclip qui contient un LoadClip. J'ai placé un Listener qui 'devrait' afficher une image en attendant le chargement Loadmovie dans un autre movieclip [ par lascarrou ] Bonjour à tous,Merci pour toutes vos contributions du forum. Même un débutant comme moi arrive à s'en sortir.J'ai toutefois une question à laquelle je MovieClipLoader et interval [ par claviskass ] Salut !!Voici une base de code pour une galerie "thumbnail" via un fichier XML. Ce que je cherche a faire c’est de charger mes images une par une. J’a Impossible de supprimer un movieclip ! [ par Dansum ] Bonjour tout le monde,Voilà je fais actuellement une vidéo interactive et j'ai un petit problème car je n'arrive pas à supprimer un movieclip qui a ét Barre de chargement problème sour I.E. pas sous fireFox [ par embalmer ] Bonjour, Voilà je vous explique mon problème, j'ai crée une animation débutant par une barre de chargement. En plus de ce qui se trouve à la racine bug sur fondu movie clip [ par missopium ] bonsoirvoila mon souci j ai un bug sur un menu que je suis en train de concevoirau passage de la souris sur mes logos l intitulé s affiche en fondu (r help!! problème chargement flash [ par adeltimple ] bonjour à tous . j'ai enfin réussi d'inserer un lien sur mon bouton sous flash dans mon intro avec Code : //fonction exécutée en réponse à l'événemen


Nos sponsors


Sondage...

Comparez les prix

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 : 0,577 sec (4)

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