spettacoli JMenuItem checkbox a sinistra, come disattivarlo?
Domanda
Sto costruendo una menu che risiede nella barra dei menu del programma e si apre un JPopupMenu se un JButton viene cliccato il basso. Nel JPopupMenu ci sono più JMenuItems.
Tuttavia, accanto ad ogni JMenuItem mostra una casella di controllo! Che assomiglia a questo:
Non credo si deve, e non v'è esplicito JCheckBoxMenuItem per questo.
Qualcuno sa perché una casella di controllo appare in un JMenuItem e come faccio a disattivare / rimuoverlo?
Il codice
ImageIcon icon = ViewUtilities.createIcon("resource/gui/mainMenu.png", _buttonLength);
setIcon(icon);
JMenuItem menuItem = new JMenuItem("New Whiteboard");
menuItem.addActionListener(new NewWhiteboardActionListener());
getMenu().add(menuItem);
menuItem = new JMenuItem("Open...");
menuItem.addActionListener(new OpenFileActionListener());
getMenu().add(menuItem);
menuItem = new JMenuItem("Preferences...");
menuItem.addActionListener(new PreferencesActionListener());
getMenu().addSeparator();
getMenu().add(menuItem);
menuItem = new JMenuItem("Exit");
menuItem.addActionListener(new ExitActionListener());
getMenu().addSeparator();
getMenu().add(menuItem);
dove getMenu()
restituisce un JPopupMenu
.
Grazie!
Saluti,
Shuo
Modifica l'ho riparato. Il problema è il Jide
biblioteca. L'ho usato
per un LAF personalizzato di TabbedPanel. Ed è inietta ??em> LAF per i menu a comparsa
troppo fintanto che è carico.
Quindi la soluzione è troppo impostato su non stili di menu di carico.
LookAndFeelFactory.installJideExtension(
LookAndFeelFactory.VSNET_STYLE_WITHOUT_MENU);
Soluzione 2
Il problema è il Jide
biblioteca. L'ho usato
per un LAF personalizzato di TabbedPanel. Ed è inietta ??em> LAF per i menu a comparsa
troppo fintanto che è carico.
Quindi la soluzione è troppo impostato su non stili di menu di carico.
LookAndFeelFactory.installJideExtension(
LookAndFeelFactory.VSNET_STYLE_WITHOUT_MENU);
Altri suggerimenti
@zavie Sulla base di questo jide argomento del forum la soluzione è, quando si utilizza Jide di fare quanto segue prima di instatiating i menu
LookAndFeelFactory.installDefaultLookAndFeel();
LookAndFeelFactory.installJideExtension();
Inoltre, in Windows 7, la barra dei menu avrà un colore di sfondo leggermente diverso rispetto alle voci di menu, la soluzione è quella di utilizzare JideMenu invece di JMenu.