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

Agents de placement/Fenêtres Java Discussion :

JMenuItem ne s'affiche pas


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2014
    Messages : 3
    Points : 3
    Points
    3
    Par défaut JMenuItem ne s'affiche pas
    Bonjour, j'ai un problème dans l'affichage d'items dans une JMenuBar + JMenu
    Je développe une interface graphique pour un programme de gestion d'animaux de compagnie
    Je veux que ma fenêtre possède une barre de menu en haut avec 3 menus déroulants, et pour le reste de la fenêtre, je veux qu'elle soit remplie par des onglets (6) avec chacun un JPanel à l'intérieur

    Tout s'affiche bien quand je ne déclare aucun item dans le menu, le menu s'affiche bien en haut, et les onglets sont tous bien présents.
    Mais quand je déclare ne serait ce que quelques items, sans même les ajouter au menu, plus rien ne s'affiche, ni la barre de menu, ni les onglets !

    Je débute en Java et aussi en Swing (étudiant en première année de DUT Info)
    C'est ce qui est en commentaire qui bug

    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
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
     
    import javax.swing.JMenuItem;
    import java.awt.BorderLayout;
    import javax.swing.JFrame;
    import javax.swing.JMenu;
    import javax.swing.JMenuBar;
    import javax.swing.JPanel;
    import javax.swing.JTabbedPane;
     
    public class Fenetre extends JFrame {
     
    	private static final long serialVersionUID = 1L;
     
    	public Fenetre() {
     
    		/* Fenetre */
    		final JFrame fenetre = new JFrame();
    		fenetre.setSize(1024,768);
    		fenetre.setTitle("Gestion élevage");
    		fenetre.setResizable(false);
    		fenetre.setVisible(true);
    		fenetre.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
    		fenetre.setLocationRelativeTo(fenetre.getParent());
    		fenetre.setLayout(new BorderLayout());
     
    		JMenuBar menu = new JMenuBar();
    		JMenu fichier = new JMenu("Fichier");
    		JMenu edition = new JMenu("Edition");
    		JMenu aide = new JMenu("Aide");
    		/*JMenuItem nouveau = new JMenuItem("Nouveau cobaye");
    		JMenuItem charger = new JMenuItem("Charger");
    		JMenuItem enregistrer = new JMenuItem("Enregistrer");
    		JMenuItem quitter = new JMenuItem("Quitter");
    		JMenuItem aideItem = new JMenuItem("Aide");
    		JMenuItem apropos = new JMenuItem("A propos");*/
     
    		/*fichier.add(nouveau);
    		fichier.add(charger);
    		fichier.add(enregistrer);
    		fichier.add(quitter);
    		aide.add(aideItem);
    		aide.add(apropos);*/
    		menu.add(fichier);
    		menu.add(edition);
    		menu.add(aide);
     
    		JPanel resume = new JPanel();
    		JPanel poids = new JPanel();
    		JPanel ancetres = new JPanel();
    		JPanel portees = new JPanel();
    		JPanel veterinaire = new JPanel();
    		JPanel commentaires = new JPanel();
    		resume.setLayout(new BorderLayout());
    		poids.setLayout(new BorderLayout());
    		ancetres.setLayout(new BorderLayout());
    		portees.setLayout(new BorderLayout());
    		veterinaire.setLayout(new BorderLayout());
    		commentaires.setLayout(new BorderLayout());
     
    		JTabbedPane onglets = new JTabbedPane();
    		onglets.addTab("Résumé", resume);
    		onglets.addTab("Suivi du poids", poids);
    		onglets.addTab("Ancêtres", ancetres);
    		onglets.addTab("Portées", portees);
    		onglets.addTab("Vétérinaire", veterinaire);
    		onglets.addTab("Commentaires", commentaires);
     
    		fenetre.setJMenuBar(menu);
    		fenetre.add(onglets, BorderLayout.CENTER);
    	}
    }

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Il te manque juste l'import de javax.swing.JMenuItem.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2014
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Je viens de vérifier, l'import était bien la pourtant
    Je ne l'avais juste pas copié dans le premier post

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Ok, j'ai regardé plus en détail le code, et le problème vient du fait que tu rends visible la fenêtre avant d'y ajouter le contenu : il faut toujours revalider et repeindre après un changement dans un composant déjà affiché. Mets donc le fenetre.setVisible(true) à la fin de ta méthode, et ça fonctionnera.

    Par contre, pourquoi changer le layout ? Le layout standard d'un LayeredPane est fait pour gérer des fenêtres avec barre de menus : supprimer le fenetre.setLayout(new BorderLayout()) et faire fenetre.getContentPane().add(onglets); rendra Fenetre plus standard.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Dordogne (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2014
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci beaucoup ! Je viens de corriger mon code, cela marche parfaitement ! Merci !

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

Discussions similaires

  1. JMenu et JMenuItem s'affichent pas en Arabe
    Par j_esti dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 23/09/2013, 10h45
  2. [JTable] les noms des colonnes de s'affichent pas
    Par macben dans le forum Composants
    Réponses: 6
    Dernier message: 25/04/2008, 11h03
  3. Le résultat de Print ne s'affiche pas...
    Par Red Bull dans le forum Langage
    Réponses: 9
    Dernier message: 15/06/2006, 18h56
  4. Les classes ne s'affichent pas
    Par karl3i dans le forum MFC
    Réponses: 8
    Dernier message: 26/01/2004, 14h52
  5. [MFC] Ces fenêtres qui ne s'affichent pas..
    Par Davide dans le forum MFC
    Réponses: 3
    Dernier message: 19/11/2003, 11h30

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