Menu avec swing
Résolu
djanahana
-
djanahana Messages postés 82 Date d'inscription Statut Membre Dernière intervention -
djanahana Messages postés 82 Date d'inscription Statut Membre Dernière intervention -
salut tout le monde
j'aimerai bien que vous m'aidé a trouver une solution a on probleme avec SWING java.
je travail avec les menus ,mon probleme est j'ai pas trouvé un exemple sur l'utilisation des menus avec different panel ;autrement dit ;je veut que chaque menuitem me place sur un JPANEL ,toute en restant sur la même fenetre(FRAME),
mon application est trop compliqué ,elle contient un toolbar,des onglets et vraiment j'ai pas trouve des exemples complet ,tout ce que j'ai trouve c'est des exemple qui explique chaque composant indépendamment
merci
j'aimerai bien que vous m'aidé a trouver une solution a on probleme avec SWING java.
je travail avec les menus ,mon probleme est j'ai pas trouvé un exemple sur l'utilisation des menus avec different panel ;autrement dit ;je veut que chaque menuitem me place sur un JPANEL ,toute en restant sur la même fenetre(FRAME),
mon application est trop compliqué ,elle contient un toolbar,des onglets et vraiment j'ai pas trouve des exemples complet ,tout ce que j'ai trouve c'est des exemple qui explique chaque composant indépendamment
merci
A voir également:
- Menu avec swing
- Menu déroulant excel - Guide
- Canon quick menu - Télécharger - Utilitaires
- Windows 11 menu contextuel classique - Guide
- Windows 11 menu démarrer classique - Guide
- Réinitialiser menu démarrer windows 10 - Guide
3 réponses
Dans les tutoriaux officiels, les exemples de codes sont généralement complets donc regarde plutôt Lesson: Using Swing Components et donc en particulier How to Use Menus.
Salut!
;-)
package hacktrack.menus; import java.awt.BorderLayout; import java.awt.Container; import java.awt.Dimension; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JPanel; import javax.swing.JTabbedPane; public class MenuDemo extends JFrame { private Container c; private JTabbedPane tabbedPane; private JPanel jp1, jp2, jp3; public MenuDemo() { super("Menu Demo"); init(); } private void init() { setDefaultCloseOperation(EXIT_ON_CLOSE); c = getContentPane(); c.setLayout(new BorderLayout()); tabbedPane = new JTabbedPane(); tabbedPane.setPreferredSize(new Dimension(640, 480)); jp1 = new JPanel(); jp1.add(new JLabel("Panel 1")); tabbedPane.add("Tabbed panel 1", jp1); jp2 = new JPanel(); jp2.add(new JLabel("Panel 2")); tabbedPane.add("Tabbed panel 2", jp2); jp3 = new JPanel(); jp3.add(new JLabel("Panel 3")); tabbedPane.add("Tabbed panel 3", jp3); c.add(tabbedPane, BorderLayout.CENTER); JMenuBar menuBar = new JMenuBar(); JMenu demoMenu = new JMenu("Cliquez moi..."); JMenuItem jm1 = createMenu("Activer le panel 1", jp1); demoMenu.add(jm1); JMenuItem jm2 = createMenu("Activer le panel 2", jp2); demoMenu.add(jm2); JMenuItem jm3=createMenu("Activer le panel 3", jp3); demoMenu.add(jm3); menuBar.add(demoMenu); setJMenuBar(menuBar); } private JMenuItem createMenu(String title, JPanel panelToActivate) { TabSelectAction action = new TabSelectAction(title, panelToActivate); JMenuItem menuForPanel = new JMenuItem(action); menuForPanel.setPreferredSize(new Dimension(160, 20)); return menuForPanel; } class TabSelectAction extends AbstractAction { private JPanel panelToActivate; public TabSelectAction(String title, JPanel panelToActivate) { super(title); this.panelToActivate = panelToActivate; } @Override public void actionPerformed(ActionEvent e) { tabbedPane.setSelectedComponent(panelToActivate); tabbedPane.repaint(); } } public static void main(String[] args) { MenuDemo demo = new MenuDemo(); demo.pack(); demo.setVisible(true); } }
;-)
mon objectif est similaire a celui présenté dans
https://www.developpez.net/forums/d714982/java/interfaces-graphiques-java/debuter/jframe-menu-plusieurs-panel/
il y a t'il des idées?