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 :

Function() retour variable


Sujet :

Flash

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Par défaut Function() retour variable
    Bonjours,
    J'aimerais faire une function avec des paramètre qu'on peut modifié...
    Je veux qu'on lui passe une valeur et que, à la fin de la function, la valeur qu'on lui a passé soit changé:

    exemple de mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ma_fonction= function(par1,par2){
    	par1=par1+1
    	par2=par2+10
    }
    nbre1=20
    nbre2=30
    ma_fonction(nbre1,nbre2)
    trace(nbre1)
    trace(nbre2)
    //ça me retourne 20 et 30, mais j'aimerais que ca me retroune 21 et 40


    Bref, je veux un genre de "byref" (comme en vb), mais je ne sais pas si ça ce fait.


    Mais bon, merci d'avance, si ça se fait

  2. #2
    Membre expérimenté Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Par défaut
    Bonjour,

    exemple basique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function fonction_avec_parametres(ma_variable) {
    trace(ma_variable);
    }
    fonction_avec_parametres(1);
    fonction_avec_parametres(2);
    fonction_avec_parametres(3);
    fonction_avec_parametres(4);
    fonction_avec_parametres("texte");
    bien à toi

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Par défaut Merci, mais...
    Bonjour,

    J'apprécie bien que vous avez essayé de m'aider, mais ce n'est pas vraiment ce que je voulais. Je sais, je n'était pas assez précis dans mon message, donc je l'ai modifié.

    Merci quand même

  4. #4
    Membre Expert
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Par défaut
    et alors ?
    que voulez tu ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 102
    Par défaut
    Sauf erreur de ma part, je ne crois pas q'une fonction en ActionSceipt puisse renvoyer deux valeurs.

  6. #6
    Membre Expert
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Par défaut
    Citation Envoyé par jpboogie
    Sauf erreur de ma part, je ne crois pas q'une fonction en ActionSceipt puisse renvoyer deux valeurs.
    tu veux dire deux arguments ?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 102
    Par défaut
    Peut être comme ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    _global.value1 = 10;
    _global.value2 = 20;
     
    function my_function(param1, param2) {
     _global.value1 += param1;
     _global.value2 += param2;
    }
     
    my_function(10, 10);
     
    trace(_global.value1 + " " + _global.value2);

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 102
    Par défaut
    Citation Envoyé par jean philippe
    tu veux dire deux arguments ?
    Je veux dire retourner deux valeurs

  9. #9
    Membre Expert
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Par défaut
    pouquoi plus simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function my_function(param1, param2) {
    	trace(param1);
    	trace(param2);
    }
    my_function(10, 10);

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 102
    Par défaut
    Citation Envoyé par jean philippe
    pouquoi plus simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function my_function(param1, param2) {
        trace(param1);
        trace(param2);
    }
    my_function(10, 10);
    Oui c'est clair, mais que fais tu avec trace() ? C'est juste pour afficher les valeurs ça ...., pas vraiment exploitable dans son appli car dans ce cas là , la fonction ne retourne rien . J'ai râté un truc là ?

  11. #11
    Inactif Avatar de CR_Gio
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 195
    Par défaut
    hi,

    peut etre que c'est ca que tu veux faire ?.?.?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    //declration de la fonction
    =====================
    _root.maFonction=function(param1:String, param2:Number ):Object{
    	var	fonctionRetour:Object=new Object();
    		fonctionRetour.retour1=new String(param1+param1);
    		fonctionRetour.retour2=new Number(param2+param2);
    	return	fonctionRetour;
    }
    // utilisation de la fonction
    //====================
    var	my_Obj:Object=new Object();
    	my_Obj=_root.maFonction("a",1);
    trace(my_Obj.retour1);// output : aa
    trace(my_Obj.retour2);// output : 2
    Bon t'es pas obligé sur flash de faire : _root.leNomDeMaFonction, mais c plus claire ... c surtout dans les specification de l'as

    @+, en esperant t'avoir aidé

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 102
    Par défaut
    Citation Envoyé par CR_Gio
    hi,

    peut etre que c'est ca que tu veux faire ?.?.?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    //declration de la fonction
    =====================
    _root.maFonction=function(param1:String, param2:Number ):Object{
        var    fonctionRetour:Object=new Object();
            fonctionRetour.retour1=new String(param1+param1);
            fonctionRetour.retour2=new Number(param2+param2);
        return    fonctionRetour;
    }
    // utilisation de la fonction
    //====================
    var    my_Obj:Object=new Object();
        my_Obj=_root.maFonction("a",1);
    trace(my_Obj.retour1);// output : aa
    trace(my_Obj.retour2);// output : 2
    Bon t'es pas obligé sur flash de faire : _root.leNomDeMaFonction, mais c plus claire ... c surtout dans les specification de l'as

    @+, en esperant t'avoir aidé
    +1

  13. #13
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 47
    Par défaut
    Une fonction ne peux pas renvoyer 2 objet différent, car ou moment où elle renvoit quelque chose (return), sont exécustion s'arrêt, donc pour récupèrer plussieur valeur tu dois renvoyer un objet composer. Comme CR_Gio le montre en utilisant un Object ou alors en utilisant un Array (Tableau).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    function returnArray( param ) : Array
    return [params, "plif", "plaf", 0];
    }
    Voir une 3e solution en renvoyant un objet de ton cru, ce qui permet de typper le retour, mais là je crois que je m'écarte du sujet, on en reparlera quand tu attaquera l'AS2 ou l'AS3.

    ++

  14. #14
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Par défaut Merci Tous
    Hey, trop cool que vous m'avez aidé !!
    Merci à tous!!

    Finalement, je crois que je vais utiliser une variable global, c'est le plus simple pour ce que je veux faire. Les objets, je ne connais pas assez, alors je préfère ne pas les utiliser.

    Vous m'avez vraiment aidé... merci

    Bye

  15. #15
    Membre expérimenté Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Par défaut
    Bonjour,

    Une fonction ne peux pas renvoyer 2 objet différent,..
    heu... si , je suis désolé.

    Bien à toi

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 102
    Par défaut
    Citation Envoyé par aorgerit
    Bonjour,



    heu... si , je suis désolé.

    Bien à toi
    Comme mentionné plus haut par CR GIO ?

Discussions similaires

  1. set timeout et function avec variable
    Par darkbob dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/06/2007, 07h49
  2. Textarea et retour variable
    Par Deallyra dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 25/05/2007, 20h14
  3. Erreur : "undefined function or variable"
    Par pwfsic dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 11/05/2007, 14h07
  4. Function avec variable method
    Par BATiViR dans le forum Delphi
    Réponses: 8
    Dernier message: 20/04/2007, 10h22
  5. [retour variable] retourner un type RECORD
    Par tyrann dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 19/11/2005, 14h38

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