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 :

propriété de classe


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2008
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 12
    Par défaut propriété de classe
    Bonjour,

    dans mon projet en Flex, j'ai les éléments suivants:
    => Un fichier mxml: TestClient.mxml, dans lequel je crée un "textarea": chat.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	<mx:TextArea x="10" id="chat" width="175" top="308" bottom="106"/>
    => Une classe publique: Chatfill.as, dans laquel je souhaite remplir le "textarea",
    en l'appelant de la façon suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    import TestClient;
    ............
    TestClient.chat.text = "un nouveau text";
    Hors, lorsque je lance la compilation, j'ai l'erreur suivante en retour:
    1119: Accès à la propriété chat peut être non définie, via la référence de type static class.
    J'aurais aimé savoir comment je peux faire en sorte que ma classe ne soit pas static ou bien que le textarea soit modifiable via la classe "Chatfill.as".

    N'hésitez pas à me demander, s'il manque des infos.

    Merci,

    Etienne.

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Mai 2006
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 895
    Par défaut
    => Une classe publique: Chatfill.as, dans laquel je souhaite remplir le "textarea",
    en l'appelant de la façon suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    import TestClient;
    ............
    TestClient.chat.text = "un nouveau text";
    Il faudrait que tu utilises le databinding :

    1 - Tu déclares ton objet dans ton TestClient.mxml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <mx:Script
       <![CDATA[
           [Bindable]
           private var chatfill:Chatfill = new Chatfill();
       ]]>
     </mx:Script> 
    <mx:TextArea x="10" id="chat" width="175" top="308" bottom="106" text="{chatfill.monTexte}"/>
    2 - Tu dois avoir un bien évidemment un champs String monTexte dans ta classe Chatfill

    3 - Toutes les modifications que tu effectuera sur le champs monTexte sera pris en compte dans par le textarea

    Ici : http://www.adobe.com/devnet/flex/qui..._data_binding/
    Un tutoriel très simple pour comprendre le databinding qui représente les bases à connaître en Flex.

    ++

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    319
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 319
    Par défaut
    Je pense qu'il s'agit plus d'un problème sur la programmation objet d'une manière générale...

    Lorsque tu crées un composant TestClient.mxml, tu crée en quelque sorte une classe.
    On ne peut pas accéder aux composants d'une classe comme tu le fais.

    Tu dois d'abord CRÉER une instance de la classe (composant mxml dans ton cas) TestClient

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var testClient : TestClient = new TestClient();
    ou bien en mxml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <TestClient id="testClient" />
    c'est seulement à ce moment que tu peux faire appel à

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    testClient.chat.text = "un nouveau text";
    si je peux me permettre, tu devrais d'abord t'orienter vers les basiques de la programmation objet, tu avanceras plus vite dans la compréhension de Flex et AS3

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/01/2009, 18h34
  2. Réponses: 2
    Dernier message: 25/08/2008, 10h54
  3. les propriétés des classes externes
    Par zooffy dans le forum ASP.NET
    Réponses: 12
    Dernier message: 28/01/2008, 15h10
  4. passer une fonction dans un parametre d'une propriété de classe
    Par CAML dans le forum Général JavaScript
    Réponses: 22
    Dernier message: 06/08/2006, 19h52
  5. Indexation d'une propriété de classe
    Par Phifi dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 18/07/2006, 08h31

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