IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

[FLASH MX2004] Taille d'une texte dynamique


Sujet :

Flash

  1. #1
    Membre régulier Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Points : 90
    Points
    90
    Par défaut [FLASH MX2004] Taille d'une texte dynamique
    Bonjour,

    J'ai créé un texte dynamique pour pouvoir importer différents textes de longueur variables situés dans des fichiers ".txt". Il n'y a que la hauteur qui varie. Je voudrais placer des boutons en-dessous de mon texte en fonction de la hauteur du texte dynamique mais je n'ai jamais le bon chiffre et du coup, mes boutons se placent n'importe où !

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    function loadtexteetape(numetape:String):Void {
    	monLoadVars = new LoadVars();
    	//on envoi le paramètre du fichier à ouvrir
    	monLoadVars.load(numetape+".txt");
    	etap_txt.autoSize = true;
    	trace("taille case texte au début : " + etap_txt._height);
    	monLoadVars.onData = function(src) {
    		var nlPos;
    		// Supprime les retours chariot (\r) pour ne laisser que les retours à la ligne
    		while ((nlPos=src.indexOf("\r"))>=0) {
    			src = src.slice(0, nlPos)+src.slice(nlPos+1);
    		}
    		// On met le contenu du fichier dans la zone de texte
    		etap_txt.text = src;
    	};
    	trace("taille case texte à la fin : " + etap_txt._height);
    }
    Ce qui se passe, c'est que quand je lance mon appli j'ai :
    taille case texte au début : 17
    taille case texte à la fin : 17

    alors que normalement, pour le texte qui s'affiche par défaut (et qui s'affiche très bien d'ailleurs), la hauteur devrait être de 199 à la fin !!!

    J'espère avoir été assez claire. Y'a quelqu'un qui aurait une idée pour me dépatouiller par hasard ?

  2. #2
    Membre confirmé Avatar de BrItneY
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    488
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 488
    Points : 501
    Points
    501
    Par défaut
    j'ai essaye, et j'ai reussi a recuperer une bonne valeur en faisant cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    monLoadVars = new LoadVars();
    	//on envoi le paramètre du fichier à ouvrir
    monLoadVars.load("1.txt");
    trace("taille case texte au début : " + etap_txt._height);
    monLoadVars.onData = function(src) {
    		// On met le contenu du fichier dans la zone de texte
    		etap_txt.text = src;
    		etap_txt.autoSize = true;
    trace("taille case texte à la fin : " + etap_txt._height);
    }
    j'ai deplace le trace (), car sinon il te donne la valeur initiale, car il aura pas encore charge le texte dedans...mais la ca doit marcher...

  3. #3
    Membre régulier Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Points : 90
    Points
    90
    Par défaut
    Voui ça marche !!! C'était juste l'autosize qu'était pas à la bonne place et le trace si j'ai bien compris ! Super !!! Merci beaucoup (La honte pour moi, je suis dessus depuis 3 heures )

    Une dernière petite question : c'est possible de dire par AS de justifier le texte importé dans la case texte dynamique ?

  4. #4
    Membre confirmé Avatar de BrItneY
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    488
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 488
    Points : 501
    Points
    501
    Par défaut
    donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    align (propriété TextFormat.align)
    public align : String
    
    Une chaîne indiquant l'alignement du paragraphe. Vous pouvez appliquer cette propriété tant aux champs texte statiques qu'aux champs texte dynamiques. Le tableau ci-dessous donne la liste des valeurs possibles pour cette propriété. 
    
    "left"-Le paragraphe est aligné à gauche. 
    "center"-Le paragraphe est centré. 
    "right"-Le paragraphe est aligné à droite. 
    "justify"-Le paragraphe est justifié. (Cette valeur a été ajoutée dans Flash Player 8.) 
    La valeur par défaut est null, ce qui indique que la propriété n'est pas définie.
    
    Disponibilité : ActionScript 1.0 ; Flash Player 6
    
    Exemple
    L'exemple suivant illustre la propriété align définie pour la justification, ce qui entraîne un espacement des caractères sur chaque ligne qui donne au texte un espacement horizontal d'un aspect plus régulier. 
    
    var format:TextFormat = new TextFormat();
    format.align = "justify"; // ce qui t'interesse !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    
    var txtField:TextField = this.createTextField("txtField", this.getNextHighestDepth(), 100, 100, 300, 100);
    txtField.multiline = true;
    txtField.wordWrap = true;
    txtField.border = true;
    txtField.text = "When this text is justified, it will be "
         + "spread out to more cleanly fill the horizontal "
         + "space for each line. This can be considered an "
         + "improvement over regular left-aligned text that "
         + "will simply wrap and do no more.";
    txtField.setTextFormat(format);
    
    
    La méthode MovieClip.getNextHighestDepth() utilisée dans cet exemple requiert Flash Player 7 ou version ultérieure. Si votre fichier SWF comporte un composant de la version 2, utilisez la classe DepthManager des composants de la version 2 au lieu de la méthode MovieClip.getNextHighestDepth().
    mais je c pas sous flash mx, donc essaye...sinon recherche justify textFormat, ou textfield, des trucs dans ce genre la...

  5. #5
    Membre régulier Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Points : 90
    Points
    90
    Par défaut
    Effectivement, ça marche pas sous flash mx. Merci quand même pour tout !

  6. #6
    Membre confirmé Avatar de BrItneY
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    488
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 488
    Points : 501
    Points
    501
    Par défaut
    ca devrait je crois, la disponibilité est : ActionScript 1.0 ; Flash Player 6 !!

    t'as essayee quelquechose comme cela : (?)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    var format:TextFormat = new TextFormat();
    format.align = "justify";
    txtField.setTextFormat(format);
    parce que ca d'apres l'aide, c'est compatible MX 2004...

  7. #7
    Membre régulier Avatar de morgiane
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    144
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 144
    Points : 90
    Points
    90
    Par défaut
    oui, et j'ai essayé de le mettre avant et après le "autosize=true" et ça marche pas. Peut-être que c'est à cause l'autosize justement, parce que j'ai lu dans l'aide que si l'autosize est à true, il aligne à gauche par défaut ! J'ai aussi essayé de remplacer le "justify" par "center" et là par contre, ça marchait.

  8. #8
    Membre confirmé Avatar de BrItneY
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    488
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 488
    Points : 501
    Points
    501
    Par défaut
    ah, pas glop...

  9. #9
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    821
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 821
    Points : 280
    Points
    280
    Par défaut
    Salut

    Je suis sur la même galère mais sauf que je n'arrive pas à justifier mon texte .
    Que ce soit du align = "center" sur le format ou du autoSize="center" comme dit l'aide, ça ne marche pas.

    Pouvez-vous m'aguiller un peu plus???

    Merci!!!

  10. #10
    Membre éprouvé
    Avatar de thecaptain
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Décembre 2003
    Messages
    919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Décembre 2003
    Messages : 919
    Points : 1 210
    Points
    1 210
    Par défaut
    Salut,

    en Flash MX 2004, le texte dynamique n'est pas justifiable...

    @++

  11. #11
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    821
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 821
    Points : 280
    Points
    280
    Par défaut
    merci theCaptain!

    Dois-je passer à Flash 8?
    Que risques puisse-je trouver si je passe à Flash 8 et que j'ouvre mon projet Flash MX 2004 sur Flash 8????
    Ca continue de marcher Niquel ou ....

    Merci encore!!


  12. #12
    Membre éprouvé
    Avatar de thecaptain
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Décembre 2003
    Messages
    919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Décembre 2003
    Messages : 919
    Points : 1 210
    Points
    1 210
    Par défaut
    Salut,

    si c'est bien monté, aucun souci ^^

    @++

  13. #13
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    821
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 821
    Points : 280
    Points
    280
    Par défaut
    Bien monté??? c'est à dire????

  14. #14
    Membre éprouvé
    Avatar de thecaptain
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Décembre 2003
    Messages
    919
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Décembre 2003
    Messages : 919
    Points : 1 210
    Points
    1 210
    Par défaut
    re,

    Citation Envoyé par Garra
    Bien monté??? c'est à dire????
    sans utiliser de code obsolète par exemple

    @++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 29/01/2006, 22h17
  2. [FLASH MX2004] Pb d'affichage texte dynamique
    Par mohican13 dans le forum Flash
    Réponses: 6
    Dernier message: 01/02/2005, 09h55
  3. [FLASH MX] taille d'une image
    Par matN59 dans le forum Flash
    Réponses: 2
    Dernier message: 10/06/2004, 10h51
  4. [FLASH MX2004] Architecture d'une classe
    Par matN59 dans le forum Flash
    Réponses: 6
    Dernier message: 13/05/2004, 08h11
  5. Réponses: 4
    Dernier message: 07/05/2004, 21h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo