J'ai essayé aussi, mais JMenuItem avec Jmenu et JmenuBar n'a pas été ajouté JPanel.
Mais vous pouvez vous sentir si vous déclarez JFrame's layout null alors utiliser setBounds(x, y, width, height) sur JMenuBar instance puis ajouter la barre de menu pour JFrame.
0
Essayez de mettre un jDesktopPane sur votre panneau, puis ajouter une barre de menu. Je suis à l'aide d'un panneau à onglets dans mon exemple ci-dessous, mais il devrait fonctionner de la même pour un panneau.
J'ai une autre solution, même si vous devez ajouter le JMenuBar dans les "Autres Composants" de NetBeans (assez bon). Créer un Composite puis ajouter un autre Composite à l'intérieur (l'appel de l'enfant) qui remplit l'ensemble de la outter Composite. Placez vos commandes dans le groupe d'enfants. Puis ajouter le JMenuBar mais NetBeans va le placer dans "Autres Composants". Modifier votre source et dans le ctor une fois qu'il appelle "initComponents" placer un appel à cette fonction:
publicstaticvoid setJPanelMenuBar(JPanel parent,JPanel child,JMenuBar menuBar){
parent.removeAll();
parent.setLayout(newBorderLayout());JRootPane root =newJRootPane();
parent.add(root,BorderLayout.CENTER);
root.setJMenuBar(menuBar);
root.getContentPane().add(child);
parent.putClientProperty("root", root);//if you need later}
Par exemple, votre ctor pourrait ressembler à ceci:
Fonctionne pour moi. A eu l'idée en regardant JInternalFrame code source. Il n'est de remplacer l'enfant Composite avec un JRootPane (), puis mettre l'enfant dans la racine du volet le volet de contenu.
Vous pouvez utiliser un BorderLayout pour votre Composite et de mettre le JMenuBar dans le NORD de la zone du panneau avec
JMenuBar est un JComponent et peut être ajouté à un Conteneur comme n'importe quel autre JComponent.
JMenuBars sont mis à la JFrame à l'aide de la setJMenuBar méthode.
Voir la suite de tutoriel sur la façon de les utiliser.
http://download.oracle.com/javase/tutorial/uiswing/components/menu.html
J'ai essayé aussi, mais
JMenuItem
avecJmenu
etJmenuBar
n'a pas été ajoutéJPanel
.Mais vous pouvez vous sentir si vous déclarez
JFrame
's layout null alors utilisersetBounds(x, y, width, height)
surJMenuBar
instance puis ajouter la barre de menu pourJFrame
.Essayez de mettre un jDesktopPane sur votre panneau, puis ajouter une barre de menu. Je suis à l'aide d'un panneau à onglets dans mon exemple ci-dessous, mais il devrait fonctionner de la même pour un panneau.
J'ai une autre solution, même si vous devez ajouter le JMenuBar dans les "Autres Composants" de NetBeans (assez bon). Créer un Composite puis ajouter un autre Composite à l'intérieur (l'appel de l'enfant) qui remplit l'ensemble de la outter Composite. Placez vos commandes dans le groupe d'enfants. Puis ajouter le JMenuBar mais NetBeans va le placer dans "Autres Composants". Modifier votre source et dans le ctor une fois qu'il appelle "initComponents" placer un appel à cette fonction:
Par exemple, votre ctor pourrait ressembler à ceci:
Fonctionne pour moi. A eu l'idée en regardant JInternalFrame code source. Il n'est de remplacer l'enfant Composite avec un JRootPane (), puis mettre l'enfant dans la racine du volet le volet de contenu.