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

Flex Discussion :

[très débutant] : passage de paramètre pour un composant mxml


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut [très débutant] : passage de paramètre pour un composant mxml
    Bonjour à tous,

    j'me pose la question suivante :

    je dialogue avec une base MySQL via ASSQL,
    dans mon formulaire principal, il y a plusieurs combos dont les valeurs sont des données de ma base,

    je souhaiterais faire une combo.mxml "générique", càd à laquelle je passe ma requête en paramètre ce que je n 'arrive pas à faire,

    je sais créer plusieurs combo.mxml (combo1.mxml, combo2.mxml, combo3.mxml, ...) mais je duplique le code en ne changeant que la requête (bref c'est moche),

    code du fichier "initCombo.mxml" :
    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
    34
    35
    36
    37
    38
    <mx:ComboBox xmlns:mx="http://www.adobe.com/2006/mxml"
    	xmlns:assql="com.maclema.mysql.mxml.*" 
    	 dataProvider="{service.lastResult}">
    	 <mx:id>CBTest</mx:id>
     
    	<mx:Script>
            <![CDATA[
                import mx.controls.Alert;
                import com.maclema.mysql.events.MySqlErrorEvent;
                import com.maclema.util.ResultsUtil;
     
        		private var strQuery:*; 
     
    			public function initStrQuery(strInit:String):void{
        			strQuery = new String(strInit);	
        		}
     
                private function handleConnected(e:Event):void {
                	initStrQuery("SELECT DISTINCT Libelle FROM entite");
                 	service.send(strQuery);
                }
     
                private function handleError(e:MySqlErrorEvent):void {
                    Alert.show(e.text);
                }
            ]]>
        </mx:Script>
     
        <assql:MySqlService id="service"
                hostname="localhost" 
                username="root"
                password=""
                database="test_db"
                autoConnect="true"
                connect="handleConnected(event)" 
                sqlError="handleError(event)" />
     
    </mx:ComboBox>
    en fait j'aurai voulu pouvoir appeler
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    iniStrQuery(<ma requete SQL>)
    depuis ma combo dans le main.mxml mais je sais pas faire, pour l'instant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <local:initCombo labelField="Libelle" />
    (ca marche)

    je voudrais pouvoir faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <local:initCombo labelField="Libelle" iniStrQuery = "SELECT Machin FROM Bidule"/>
    et ca j'arrive pas

    je sais pas si je suis clair (... mais j'ai essayé), merci de ne pas m'accabler si c'est le cas

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut
    en fait il faut passer la variable en public
    puis initialiser depuis l'appel mxml la variable ...
    il faut pas essayer d'appeler une fonction et/ou un constructeur depuis le mxml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <local:initCombo labelField="Libelle" iniStrQuery = "SELECT Machin FROM Bidule"/>
    mais initialiser la variable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <local:initCombo labelField="Libelle" strQuery = "SELECT Machin FROM Bidule"/>
    et la c'est bon ca marche

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

Discussions similaires

  1. Passage de paramètres pour Reporting services
    Par Jé@Zoom dans le forum ASP.NET
    Réponses: 6
    Dernier message: 27/04/2007, 16h58
  2. passage de paramètre pour actualiser
    Par sissi25 dans le forum ASP
    Réponses: 30
    Dernier message: 12/07/2006, 15h04
  3. pb de passage de paramètre pour ActiveX
    Par cedyouyou dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 21/12/2005, 14h30
  4. Réponses: 7
    Dernier message: 10/02/2005, 13h44
  5. Réponses: 4
    Dernier message: 06/11/2003, 10h37

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