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 :

Problème de récupération de données d'un fichier XML


Sujet :

Flex

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 12
    Points : 6
    Points
    6
    Par défaut Problème de récupération de données d'un fichier XML
    Bonjour, j'ai un problème de récupération de données stockées dans un XML :
    J'ai bien le nom récupéré dans le XML dans le LabelField mais je voudrait affecté à la variable EpaisseurCadre la taille lors de l'évenement change.
    Mais ça ne marche pas....

    Merci d'avance

    FICHIER XML :
    <?xml version="1.0"?>
    <liste>
    <membre>
    <data>28</data>
    <nom>Cadre chasse 1</nom>
    <image1>cadre2_150.png</image1>
    <image2>baguette2.png</image2>
    <description>200.0000</description>
    <taille>12</taille>
    </membre>
    <membre>
    <data>31</data>
    <nom>Cadre chasse 2</nom>
    <image1>cadre_150.png</image1>
    <image2>baguette.png</image2>
    <description>179.0000</description>
    <taille>10</taille>
    </membre>
    </liste>
    Coté FLEX :
    <mx:ComboBox id="tComboBox" width="210"
    dataProvider="{feedRequest.lastResult.liste.membre}"
    labelField="nom"
    prompt="Choisissez..."
    rowCount="3"
    change="selectedItem=ComboBox(event.target).selectedItem;

    epaisseurCadre = ????;

    "
    color="#8C332D"/>
    <mx:Script>
    <![CDATA[
    import mx.controls.Alert;

    [Bindable]
    public var selectedItem:Object;
    /* définition du passe partout */
    public var pp : int = 0;
    public var coteCoin : int = 150;
    public var epaisseurCadre : int;

    ]]>
    </mx:Script>

    <mx:HTTPService id="feedRequest" url="cadres.xml" useProxy="false"/>
    <mx:HTTPService id="feedRequest2" url="images.xml" useProxy="false"/>

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    quand tu parles du cadre tu veux définir quoi précisément?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    le fait est que lorsque je clique sur un élément de ma combobox (créé à partir d'un XML), je n'arrive pas à récupérer un élément de ce XML justement. Ce n'est que si je reclique une nouvelle fois sur l'option de ma combobox que j'arrive à la récupérer...

  4. #4
    Membre expert
    Avatar de Jim_Nastiq
    Homme Profil pro
    Architecte, Expert Flex
    Inscrit en
    Avril 2006
    Messages
    2 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte, Expert Flex
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 335
    Points : 3 189
    Points
    3 189
    Par défaut
    J'ai peut être mal compris le problème mais chez moi aucun soucis

    j'ai testé avec ce bout de code et ton fichier images.xml :


    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application	xmlns:mx="http://www.adobe.com/2006/mxml"
    				layout="horizontal"
    				borderStyle="solid"
    				borderThickness="3"
    				backgroundColor="#000CCC"
    				borderColor="#000000"
    				width="600"
    				creationComplete="init()">
     
    	<mx:Script>
    		<![CDATA[
    			import mx.rpc.events.ResultEvent;
    			import mx.controls.Alert;
     
    			[Bindable]
    			public var selectedItem:Object;
    			/* définition du passe partout */
    			public var pp : int = 0;
    			public var coteCoin : int = 150;
    			public var epaisseurCadre : int;
     
    			private function init():void
    			{
    				feedRequest.addEventListener(ResultEvent.RESULT, result);
    				feedRequest.send();
    			}
     
    			private function onChange(event:Event):void
    			{
    				selectedItem = event.target.selectedItem;
    				trace(selectedItem.image1);
    				trace(selectedItem.image2);
    				trace(selectedItem.description);
    			}
     
    			private function result(evt:ResultEvent):void
    			{
    				tComboBox.dataProvider = (evt.result).liste.membre;
    			}
     
    		]]>
    	</mx:Script>
     
    	<mx:HTTPService id="feedRequest" url="images.xml" useProxy="false"/> 
     
    	<mx:ComboBox id="tComboBox" width="210"
    			labelField="nom"
    			prompt="Choisissez..."
    			rowCount="3"
    			change="onChange(event)"
    			color="#8C332D"/>
     
    </mx:Application>

    résultat il m'affiche bien dans ma console les données sélectionnées dans la combobox ...

    Pensez vraiment à effectuer une recherche avant de poster, ici et sur un moteur de recherche! c'est la moindre des choses
    Pensez au tag

    Mon Blog sur la techno Flex
    Ma page sur Developpez.com

    Jim_Nastiq

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Je vais essayer de réexpliquer mon problème :
    <?xml version="1.0"?><liste> <membre> <data>44</data> <nom>cadre1</nom> <image1>cadre1.png</image1> <image2>baguette1.png</image2> <hauteur>15</hauteur> <description>0.0000</description> </membre></liste>
    Voici un extrait de mon code Flex :
    <mx:ApplicationControlBar width="500" y="650" horizontalCenter="0">
    <mx:Label text="Etape 2" fontWeight="bold" fontStyle="normal" textDecoration="normal" fontSize="15" width="80"/>
    <mx:Label text="Choix de la moulure" fontSize="12" width="160"/>
    <mx:ComboBox id="tComboBox" width="210"
    dataProvider="{feedRequest.lastResult.liste.membre}"
    labelField="nom"
    prompt="Choisissez..."
    rowCount="3"
    change="selectedItem=ComboBox(event.target).selectedItem;

    pp = 0;
    epaisseurCadre = feedRequest.lastResult.liste.hauteur;

    Alert.show('Epaisseur : '+epaisseurCadre.toString());
    "
    color="#8C332D"/>
    <mx:Script>

    <![CDATA[
    import mx.controls.Alert;

    [Bindable]
    public var selectedItem:Object;
    /* définition du passe partout */
    public var pp : int = 0;
    public var coteCoin : int = 150;
    public var epaisseurCadre : int;

    ]]>


    </mx:Script>

    <mx:HTTPService id="feedRequest" url="cadres.xml" useProxy="false"/>
    <mx:HTTPService id="feedRequest2" url="images.xml" useProxy="false"/>
    Le problème étant que quand je fais un alerte de mon "epaisseurCadre" il me sort 0 au lieu de 15...

  6. #6
    Membre expert
    Avatar de Jim_Nastiq
    Homme Profil pro
    Architecte, Expert Flex
    Inscrit en
    Avril 2006
    Messages
    2 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte, Expert Flex
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 335
    Points : 3 189
    Points
    3 189
    Par défaut
    tu devrais utiliser comme moi l'event RESULT plutôt que lastResult et utiliser des méthodes handler plutôt que d'aligner du code AS dans du MXML, en plus c'est beaucoup plus lisible.

    Pensez vraiment à effectuer une recherche avant de poster, ici et sur un moteur de recherche! c'est la moindre des choses
    Pensez au tag

    Mon Blog sur la techno Flex
    Ma page sur Developpez.com

    Jim_Nastiq

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    je suis novice en Flex...
    event RESULT au lieu de LastResult il me met des erreurs...

  8. #8
    Membre expert
    Avatar de Jim_Nastiq
    Homme Profil pro
    Architecte, Expert Flex
    Inscrit en
    Avril 2006
    Messages
    2 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte, Expert Flex
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 335
    Points : 3 189
    Points
    3 189
    Par défaut
    inspires toi de mon code ci dessus
    et si tu n'y arrives pas , poste ici ton code

    Pensez vraiment à effectuer une recherche avant de poster, ici et sur un moteur de recherche! c'est la moindre des choses
    Pensez au tag

    Mon Blog sur la techno Flex
    Ma page sur Developpez.com

    Jim_Nastiq

Discussions similaires

  1. Réponses: 2
    Dernier message: 17/01/2011, 09h01
  2. Récupération de données dans un fichier XML pour une utilisation dans une servlet
    Par Dredd619 dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 24/04/2009, 08h41
  3. Réponses: 3
    Dernier message: 24/04/2009, 08h39
  4. récupération des données d'un fichier xml ?
    Par sarapis dans le forum Flex
    Réponses: 2
    Dernier message: 10/02/2009, 11h40
  5. problème récupération de données dans des fichiers .DAT
    Par indymontpellier dans le forum Bases de données
    Réponses: 4
    Dernier message: 13/04/2006, 07h54

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