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 :

PopupManager + Class + ref null


Sujet :

Flex

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 30
    Points : 24
    Points
    24
    Par défaut PopupManager + Class + ref null
    Bonjour à tous,

    Je viens de lire six page de questions relatives à l'utilisation des popup mais sans trouver de réponses.

    Voici mon probléme.

    J4ai une application AIR en Flex 4.
    J'ajoute à cette application un menu de la maniére suivante:

    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
     
    Pour Mac
                        var monMenu : CreateMenu = new CreateMenu();
     
                        if (NativeApplication.supportsMenu)
                        {
                            nativeApplication.menu = monMenu.loadMenu(nativeApplication.menu);
                        }
                        else if (NativeWindow.supportsMenu) //Windows
                        {
     
                            nativeWindow.menu = monMenu.loadMenu(nativeWindow.menu);
     
     
                        }
    J'ai donc une classe CreateMenu.as qui me permet de constuire mon menu:
    En voici un petit bout:

    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
     
    public class CreateMenu extends NativeMenu
        {
     
            // fonction constructeur
     
     
            // creation de la barre de menu
            public function loadMenu(menu : NativeMenu = null):NativeMenu
            {
     
                // s'ajoute au menu actuel
                menu = menu || new NativeMenu(); // si menu sinon new NativeMenu autre notation menu = menu ? menu : new NativeMenu
     
    var menuItem5:NativeMenuItem = new NativeMenuItem("Paramètres");
                menuItem5.submenu = createParamMenu();
                menu.addItem(menuItem5);
    return menu;
            }
     
    private function createParamMenu():NativeMenu
            {
                var menu:NativeMenu = new NativeMenu();
     
                var paramItem1:NativeMenuItem = new NativeMenuItem("Personnaliser");
                paramItem1.addEventListener(Event.SELECT , hParam);
                menu.addItem(paramItem1);
                return menu;
            }
     
     
    public function hParam(event:Event) : void
            {
    //wParamGlob - étant un fichier .mxml de type TitleWindow
                //PopUpManager.createPopUp(Application as DisplayObject,wParamGlob,false);
                var tw:TitleWindow = new wParamGlob();
                PopUpManager.addPopUp(tw, this.parent as DisplayObject , false);
            }
    Lorsque je clique sur le sous-menu Personnaliser qui fait donc appel à la fonction hParam, j'ai le message suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
        at mx.managers::PopUpManagerImpl/http://www.adobe.com/2006/flex/mx/internal::getTopLevelSystemManager()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\PopUpManagerImpl.as:450]
        at mx.managers::PopUpManagerImpl/addPopUp()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\PopUpManagerImpl.as:310]
        at mx.managers::PopUpManager$/addPopUp()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\PopUpManager.as:193]
        at fr.intersystemes.util::CreateMenu/hParam()[/Volumes/DEV/Dev Flex/Projets/OrthoExpert6/src/fr/intersystemes/util/CreateMenu.as:351]
    Je pense que mon problème vient de la réf au DisplayObject, j'ai essayé un certain nombre de choses sans succés.

    Si vous avez une idée sur la question, vous m'enlèverez une grosse épine du pied ;-)

    Merci par avance.

  2. #2
    Membre régulier Avatar de ouaqa
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2009
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2009
    Messages : 95
    Points : 100
    Points
    100
    Par défaut
    Si ça peut t'aider, en Flex, j'avais un problème d'accès à un élément de ma popup (définit à null).

    Ma popup n'était pas entièrement crée avant d'avoir été affichée.
    Donc en réalisant l'action suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    this.probePopup = new ProbeTagsPopup() ;
     
    /**ATONIS CHEAP TRICK MUST FIND BETTER SOLUTION*/
    	PopUpManager.addPopUp(this.probePopup ,Application.application.MODEView_canvas) ;
    	PopUpManager.removePopUp(this.probePopup) ;
    /**ATONIS CHEAP TRICK MUST FIND BETTER SOLUTION*/
    Sans les deux lignes entre /**ATONIS CHEAP TRICK*/ , je ne pouvais accéder aux éléments de mon Popup.

    Je ne sais pas pourquoi mais dans mon cas ça a résolu mon soucis.

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/03/2012, 12h45
  2. [Display Tag] impossible de charger la classe null ?
    Par Noxexplorer dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 21/04/2010, 15h37
  3. Destructeur de classe - remise à NULL
    Par buzzkaido dans le forum C++
    Réponses: 33
    Dernier message: 23/03/2007, 15h59
  4. Réponses: 7
    Dernier message: 10/09/2006, 11h58
  5. Novice + class = NULL
    Par prozac dans le forum C++Builder
    Réponses: 4
    Dernier message: 12/12/2005, 18h41

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