È molto difficile determinare cosa stai cercando di fare qui. Ma non penso che tu stia usando correttamente JMenu.
Un JMenu è l'oggetto che rappresenta un Menu. È separato dalla barra dei menu (JMenuBar) e dalla voce di menu (JMenuItem). Una JMenuBar di solito contiene più JMenus (File, Modifica, ecc.) Che a loro volta contengono più JMenuItems (Nuovo, Aperto, Chiudi). I JMenuItem sono ciò che viene cliccato e "agisce come un pulsante" nel menu.
Per ottenere una voce di menu che funzioni come un pulsante, è sufficiente aggiungerla al menu. Per esempio:
JMenu fileMenu = new JMenu("File");
JMenuItem newChoice = new JMenuItem("New");
newChoice.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
newHasBeenSelected();
}
});
fileMenu.add(newChoice);
Se stai cercando di creare un menu pop-up, è necessario utilizzare JPopupMenu invece di JMenu, e non hai bisogno di un JMenuBar. Qui ci sono i tutorial Java sul menu: http://java.sun.com/docs/books/tutorial/uiswing/components/menu.html
E qui sono la documentazione Java per JMenuBar, JMenu, JPopupMenu e JMenuItem.
Se si modifica la domanda e si fornisce una spiegazione più dettagliata di ciò che si sta facendo, potrei essere in grado di fornire un aiuto più specifico.
fonte
2010-03-16 17:27:00
io non sono sicuro di capire cosa si sta cercando di realizzare qui. Perché vuoi la JMenu di agire come un pulsante, invece di semplicemente usando JMenuItem? –
Forse fornisci più del codice sorgente con cui stai lavorando, quindi possiamo vedere più in generale ciò che stai cercando di ottenere. –