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

AWT/Swing Java Discussion :

actionlistener menu


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2003
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 73
    Par défaut actionlistener menu
    Bonsoir,

    J'ai créé un menu pour une petite application. J'ai quelques soucis pour déclencher un évènement lors d'un clic.
    Voici mon code
    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
    56
    57
    58
    59
    60
     
    class Frame implements ActionListener{
    	 static void createAndShowGUI() {
            //Make sure we have nice window decorations.
            JFrame.setDefaultLookAndFeelDecorated(true);
     
            //Create and set up the window.
            JFrame frame = new JFrame("Find the shortest way");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setBounds(0,0,1000,700);
     
            //Create the menu bar.  Make it have a cyan background.
            JMenuBar cyanMenuBar = new JMenuBar();
            cyanMenuBar.setOpaque(true);
            cyanMenuBar.setBackground(Color.cyan);
            cyanMenuBar.setPreferredSize(new Dimension(20, 20));
     
            //Create the menu item
            JMenuItem menuitem1 =  new JMenuItem("Compute", 'C');
            JMenuItem menuitem2 = new JMenuItem("Exit", 'E');
            JMenuItem menuitem3 = new JMenuItem("Help", 'e');
            JMenuItem menuitem4 = new JMenuItem("About", 'A');
     
            //Create the menubar elements
            JMenu menu = new JMenu("File");
            menu.setMnemonic('F'); // mnemonic
            JMenu menu2 = new JMenu("Help");
            menu2.setMnemonic('H'); // mnemonic
     
            //add menu elements to the menubar
            menu.add(menuitem1);
            menu.add(menuitem2);
            menu2.add(menuitem3);
            menu2.add(menuitem4);
            cyanMenuBar.add(menu);
            cyanMenuBar.add(menu2);
     
     
            // Prepare the event on the menu item
            menuitem4.addActionListener(this);
     
            //event when user click on a menu item
            public void actionPerformed(ActionEvent event)
     	 	{
     	 		if(event.getSource()== menuitem4) 
     	 		{
     	 			apd aproposde = new apd();
     	 		}
     	 	}
    ...
    }
     
     
    	public static void main(String[] args) {
            javax.swing.SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    createAndShowGUI();
                }
            });
        }
    Le problème est a la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public void actionPerformed(ActionEvent event)
    ou Eclipse souligne en rouge les 2 ().

    Est ce que quelqu'un aurait la gentillesse de me dire ce qu'il se passe?


    Merci pour votre aide et meilleurs voeux pour 2006


    Micka

    [ Sujet déplacé depuis le forum java par Viena ]
    Les Règles du Forum

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2005
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 87
    Par défaut
    Alors j'ai un peu la flème de lire ton code mais sâche qu'Eclipse te propose des corrections automatiques si tu cliques sur la petite croix à gauche de l'erreur.

    Enfin là j'ai l'impression que t'as imbriqué des méthodes.

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2003
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 73
    Par défaut actionlistener
    Salut,

    Merci de ta réponse. Pour ce genre d'erreur Eclipse ne propose pas de solution. Il dit juste ; expected.


    Merci


    Mickael

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 34
    Par défaut
    Slt
    ne devrais tu pas plutot passer par une action du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public void actionPerforme (ActionEvent event) {
         JMenuItem source = (JMenuItem)(e.getSource());
         if (source == menuitem4) 
              apd aproposde = new apd();
    }

  5. #5
    Membre chevronné Avatar de let_me_in
    Inscrit en
    Mai 2005
    Messages
    441
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 441
    Par défaut
    salut,
    en fait FCDB disait vrai, la methode actionPerformed est imbriquée dans la methode createAndShowGUI()
    fais la sortir et recompile.

  6. #6
    Membre expérimenté Avatar de fremsoi
    Inscrit en
    Août 2003
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 201
    Par défaut
    C'est clair

    tu as 2 méthodes possibles.
    Soit tu sors la méthode actionPerformed comme te l'ont fait remarquer les autres

    Soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     menuitem4.addActionListener(new ActionListener(){
     
            //event when user click on a menu item
            public void actionPerformed(ActionEvent event)
            {
               if(event.getSource()== menuitem4)
               {
                  apd aproposde = new apd();
               }
            }
    });
    où là tout est imbriqué

Discussions similaires

  1. MENU / ActionListener et texte qui ne s'affiche pas
    Par Bouti93 dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 23/03/2014, 16h09
  2. TreeView et menu contextuel...
    Par agh dans le forum Composants VCL
    Réponses: 6
    Dernier message: 06/04/2009, 12h23
  3. Réponses: 0
    Dernier message: 27/10/2008, 15h31
  4. [système] Comment ajouter un item dans le context menu de Windows ?
    Par ddmicrolog dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 29/06/2005, 17h03
  5. Menu en GL
    Par Kaïn dans le forum OpenGL
    Réponses: 2
    Dernier message: 06/05/2002, 11h58

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