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] Variable de Textfield comme param [Débutant(e)]


Sujet :

Flash

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 488
    Points : 397
    Points
    397
    Par défaut [FLASH MX2004] Variable de Textfield comme param
    Bonjour,

    J'ai plusieurs Textfield (contenus dans des boutons) dont je voudrais pouvoir modifier le libellé. Mais si je passe la variable associée à mon Textfield à ma fonction tout se passe comme si la variable était passé "par valeur", et non "par paramètre".

    Un exemple concret pour être plus clair (enfin j'espère) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function mafonction(mavar) {
      trace(mavar); // Affiche le contenu actuel du Textfield, comme attendu
      mavar = "nouveau texte"; // Le contenu du TextField n'est pas mis à jour
    }
    Je suppose que c'est très bête, mais j'ai encore beaucoup de mal avec actionscript.

    Merci d'avance

  2. #2
    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,

    c'est tout à fait normal Il faut que tu types tout ca et aussi que tu ne passe pas la valeur du textfield mais le textfield lui-meme, autrement dit, tu dois mettre un nom la ou c'est marqué "nom d'occurence" et pas dans "variable" ! Ensuite il te suffit de faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var test:Function = function(txt:TextField):Void
    {
       trace(txt);
       txt.text = "salut";
    }
    @++

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 488
    Points : 397
    Points
    397
    Par défaut
    Citation Envoyé par thecaptain
    Salut,

    c'est tout à fait normal Il faut que tu types tout ca et aussi que tu ne passe pas la valeur du textfield mais le textfield lui-meme, autrement dit, tu dois mettre un nom la ou c'est marqué "nom d'occurence" et pas dans "variable" ! Ensuite il te suffit de faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var test:Function = function(txt:TextField):Void
    {
       trace(txt);
       txt.text = "salut";
    }
    @++
    Bonjour, et merci pour la réponse.

    Le problème c'est que mon TextField étant inclus dans un bouton je ne sais pas comment y accéder par la méthode que tu préconises

  4. #4
    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,

    il faut le cibler. Pour cela il faut donner un nom d'occurence à ton bouton et à ton textfield. Ensuite tu fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trace(monBouton.monTextField);
    @++

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 488
    Points : 397
    Points
    397
    Par défaut
    Citation Envoyé par thecaptain
    il faut le cibler. Pour cela il faut donner un nom d'occurence à ton bouton et à ton textfield. Ensuite tu fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trace(monBouton.monTextField);
    En fait c'est comme cela que je faisais, quand mon objet container était un clip. Mais j'ai du le transformer en bouton, et depuis cela ne marche plus

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 488
    Points : 397
    Points
    397
    Par défaut
    Pour être précis je n'arrive pas à donner un nom à un TextField contenu dans un bouton, j'ai beau mettre "monTextField" comme nom d'instance, j'ai toujours un nom du style "instance52" pour y accéder depuis actionscript.

Discussions similaires

  1. Réponses: 5
    Dernier message: 14/01/2006, 21h30
  2. Réponses: 15
    Dernier message: 10/12/2005, 11h52
  3. [FLASH MX2004] variable
    Par mat07 dans le forum Flash
    Réponses: 1
    Dernier message: 11/10/2005, 15h20
  4. [FLASH MX2004] Variable URL vers FLASH et accents
    Par daner06 dans le forum Flash
    Réponses: 1
    Dernier message: 25/07/2005, 23h50
  5. Réponses: 7
    Dernier message: 05/12/2004, 17h45

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