begin process at 2012 05 27 18:08:42
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Flash

 > 

Archives

 > 

ActionScript

 > 

Pb : l'image se centre a partir du deuxieme clic seulement


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

Pb : l'image se centre a partir du deuxieme clic seulement

mardi 3 mai 2005 à 17:07:54 | Pb : l'image se centre a partir du deuxieme clic seulement

cbil

débutant en c/c++, flash et asm- Me contacter

Je veux centrer une image externe aux dimensions aleatoire sur mon animation, pour cela j'ai créé plusieurs fonctions. Lors du clique sur le bouton demandant a afficher l'image, l'image ne se centre pas la premiere fois, il faut cliquer une deuxieme fois pour le centrage de l'image..
Comment faire ?

Voila le code de mes fonctions a la premiere frame de l'anim.

_root.createEmptyMovieClip("pic", 1); //creation d'un clip vide nommé pic

function position()
{
 posx=(500-(_root.pic._width))/2; //calcul pour centre sur x
 posy=((500-(_root.pic._height))/2)+250; //calcul pour centrer sur y
//positionnement de l'image
 _root.pic._x=posx;
 _root.pic._y=posy;
}

function affichage(lien) {//lien : lien de l'image a chargé

 loadMovie(lien,_root.pic);
}

Code sur le bouton :

on(release)
{

  _root.lien=lelien; //lelien vient d'un fichier xml, je ne presente pas le code pour ca, il est correct, je fais appel a une fonction qui renvoie le lien voulu.......
  affichage(lien);
  position();
   
}

merci de m'aider. a+

mercredi 4 mai 2005 à 15:20:08 | Re : Pb : l'image se centre a partir du deuxieme clic seulement

djagger

Réponse acceptée !
Salut !

En fait ca vient du temps de chargement ! Tu essay de placer l'image en fonction de sa taille alors que le flash n'a toujours pas récup lefichier (du coup sa taille non plus)

Faut faire un truc du genre :


on(release)
{

  _root.lien=lelien; 
  affichage(lien);

   _root.pic.onEnterFrame=function()
   {
      if(this.getBytesTotal()==this.getBytesLoaded())
// test si le fichier est chargé
      {
         position(); // attention au chemin de la fonction par rapport à _root.pic !
         delete this.onEnterFrame;
      }
   }
}

voila ! ca devrait êter bon !

allé a+++

mercredi 4 mai 2005 à 17:01:50 | Re : Pb : l'image se centre a partir du deuxieme clic seulement

cbil

Merci, je suis sur que c t ca le probleme.
Mais le code que tu m'a passé, ne centre plus du tout, il positionne l'image toujours a 0,0 (avant c t un peu aleatoire la position), meme quand on clique sur le bouton suivant qui n'a pas ce code :


_root.pic.onEnterFrame=function()
   {
      if(this.getBytesTotal()==this.getBytesLoaded())
// test si le fichier est chargé
      {
         position();
// attention au chemin de la fonction par rapport à _root.pic !
         delete this.onEnterFrame;
      }
   }


Peux-tu m'expliquer le code _root.pic.onEnterFrame=function() et  delete this.onEnterFrame;
(ca creer une fonction temporaire ?)

Merci !
mercredi 4 mai 2005 à 17:08:17 | Re : Pb : l'image se centre a partir du deuxieme clic seulement

djagger

ouep c ca,  cf doc flash :
Gestionnaire d’événement ; invoqué continuellement à la cadence de l’animation.

et le delete c'est pour supprimer cette fonction qui ne sert plus a rien une fois l'image chargée !

là ca ne doit pas fonctionner car ta fonction position() ne se trouve pas dans le clip _root.pic

ex :

_root.pic.onEnterFrame=function()
   {
            trace (this._name); // Affiche 'pic' !
   }

donc du coup 
il faut que tu change l'accès à ta fonction  position() :

_root.position(); si c'est sur _root par exemple !


mercredi 4 mai 2005 à 17:47:11 | Re : Pb : l'image se centre a partir du deuxieme clic seulement

cbil

débutant en c/c++, flash et asm- Me contacter

Desole pour le gros texte, ce n'etait pas aussi gros dans l'editeur.

J'ai compris le code, le probleme, tout ce que tu m'as dit mais ca veut tj pas marché, voila le code

on (release) {
  _root.lien=lelien;
  loadMovie(_root.lien,_root.pic); //au lieu de affichage() qui fais juste ca
  _root.pic.onEnterFrame = function() {
   
   if (this.getBytesTotal() == this.getBytesLoaded()) {
    // test si le fichier est chargé
    _root.positionpic();
    delete this.onEnterFrame;
   }
  };
 
}

et la fonction :

function positionpic() //ca doit etre ca qui va pas alors ?
{
 posx=(500-(_root.pic._width))/2;
 posy=((500-(_root.pic._height))/2)+250; //le + 250 c'est parce que je centre sur une partir de l'animation, c bon
 _root.pic._x=posx;
 _root.pic._y=posy;
}

merci beaucoup !

mercredi 4 mai 2005 à 17:51:35 | Re : Pb : l'image se centre a partir du deuxieme clic seulement

djagger

ta fonction positionpic() est bien sous _root ?

si oui, ca devrait etre bon !

tu peux rajouter un
getURL("javascript:alert('test')");

dans ta fonction pour tester qu'elle est bien appelée !


sinon tu peux remplacer :
loadMovie(_root.lien,_root.pic);

par :
_root.pic.loadMovie(_root.lien);

mercredi 4 mai 2005 à 18:05:37 | Re : Pb : l'image se centre a partir du deuxieme clic seulement

cbil

débutant en c/c++, flash et asm- Me contacter

Hum, en effet elle n'est pas appelé.

Pourtant, la fonction positionpic() , je l'ai ecrite dans la premiere frame de l'animation principal, c donc bon, non ? (elle n'est pas sur un clip ou a l'interieur d'un clip)
mercredi 4 mai 2005 à 18:09:34 | Re : Pb : l'image se centre a partir du deuxieme clic seulement

djagger

ouep c bon !

mets ton getURL juste après le if(getBytesLoaded ....)

pour voir si il rentre dans le if !


PS : pourré pas te repondre avant lundi là dsl !
a+++ bon we !
mercredi 4 mai 2005 à 18:54:31 | Re : Pb : l'image se centre a partir du deuxieme clic seulement

cbil

débutant en c/c++, flash et asm- Me contacter

je crois que j'ai trouve, il faut utiliser MovieClipLoader, mais je n'arrive pas tres bien a m'en servir malgres l'aide de Flash

voila ce que j'ai sur mon bouton :

....
   var test = new MovieClipLoader();
  monEcouteur = new Object();

  test.addListener(monEcouteur);
  test.loadClip(_root.lien,_root.pic);
  _root.pic.loadMovie(_root.lien);

  monEcouteur.onLoadComplete = function (_root.pic)
  {
   _root.positionpic();
  }

l'erreur est :
')' ou ',' attendu
       monEcouteur.onLoadComplete = function (_root.pic)


Merci encore et a la prochaine !!
lundi 9 mai 2005 à 11:19:42 | Re : Pb : l'image se centre a partir du deuxieme clic seulement

djagger

Réponse acceptée !
lusss !

jamais utilisé le MovieClipLoader mais essay :

monEcouteur.onLoadComplete = function () // le _root.pic doit etre implicite !
  {
   _root.positionpic();
  }

1 2

Cette discussion est classée dans : image, lien, root, centre, pic


Répondre à ce message

Sujets en rapport avec ce message

pb de navigation [ par radge ] Salut tlm,j'avance petit à petit dans mon projet , mais la je me suis heurter a qqchose que je n'arrive pas à resoudre ...voila, j'ai 7 rubriques (bou FLASH comment faire un lien externe vers une image ?? [ par Donjons ] Qui peut me dire comment faire dans flash pour faire un site en prenant des liens pour mes images dans le répertoire image et non incorporé dans le sw faire un lien [ par patoch ] j'ai un petit problème, je n'arrive pas a faire un lien,je suis débutant voila une partie du code de mon menu:action pour la frame1:menu1Links=3;set(" Preloader [ par Pug ] jean-Marcsalutj'ai récupéré un prealoader qui m'intéréssai que je n'arrive pas a adapter pour que lorsque qu'il arrive a 100% de chargement il aille a Lien dans menu déroulant [ par vlaamse ] Bonjour à tous, j'ai crée un menu déroulant avec entre autre ce code, maintenant, j'aimerai que lorsque je clic sur un lien du menu cela me renvoi à u Preload ne fonctionne pas ! [ par criveur ] Salut a tous !J'ai codé un petit preload de swf externe normal avec getbytestotal() et getbytesloaded. Ca a l'air de fonctionner sur mon disque dur ma probleme avec setproperty() [ par yoyesman ] Bonjour à tous !j'ai un souci avec la commande setproperty() :je cherche à faire apparaitre une image en augmentant sa couche alpha progressivement. J Affichage sélectif d'image [ par yoyesman ] Bonjour à tous !Je cherche à faire afficher une image quand on clique sur celle ci dans le menu. Pour cela j'ai une variable "image" qui m'indique l'i Optimisation de code... [ par yoyesman ] Bonjour,J'ai créé un script qui marche bien, cependant il n'est pas du tout optimisé !!!Il me prend tout mon CPU et je n'arrive pas à lire la séquence annuaire image + lien [ par audile ] Bonjour,Pour un projet style annuaire, j'ai besoin d'afficher une liste de liens avec leur logo, le logo étant une image jpeg ou gif sous la forme sui


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

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