看板 java 關於我們 聯絡資訊
※ 引述《shevchenlun (葛利)》之銘言: : 在 AWT 中要怎麼實現 Menu 的單選功能?? : 有人知道嗎?? : 千萬不要跟我說換用 JCheckBoxMenuItem : 我就是要用 AWT 的 Menu : 希望大家幫幫我!! CheckBoxMenuItem 應該是你要的東西吧... 這次修改過了,參考看看...有錯誤再指正... import java.awt.CheckboxMenuItem; import java.awt.Frame; import java.awt.Menu; import java.awt.MenuBar; import java.awt.MenuItem; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class AWTExample implements ActionListener , ItemListener { private boolean openState=false; public AWTExample(){ //產生 Frame Frame f = new Frame("AWT 範例"); //產生 MenuBar MenuBar menubar = new MenuBar(); /* 產生 File 的 Menu 以及裡面的 MenuItem 、、 CheckboxMenuItem 和聆聽相關的事件 */ Menu fileMenu = new Menu("File"); CheckboxMenuItem opencheckboxMenuItem = new CheckboxMenuItem("Open"); fileMenu.add(opencheckboxMenuItem); menubar.add(fileMenu); opencheckboxMenuItem.addItemListener(this); //產生 Edit 的 Menu 以及裡面的 MenuItem 和聆聽相關的事件 Menu editMenu = new Menu("Edit"); MenuItem undoItem = new MenuItem("Undo"); MenuItem redoItem = new MenuItem("Redo"); editMenu.add(undoItem); editMenu.add(redoItem); menubar.add(editMenu); undoItem.addActionListener(this); redoItem.addActionListener(this); //聆聽 WindowListener 相關的事件 f.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e) { // TODO Auto-generated method stub System.exit(0); } }) ; f.setMenuBar(menubar); f.setSize(500, 300); f.setEnabled(true); f.setVisible(true); } public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub //點選Undo選單的事件發生之後... if (e.getActionCommand().equals("Undo")){ //發生事件後續的處理... System.out.println("Undo"); } //點選Redo選單的事件發生之後... if (e.getActionCommand().equals("Redo")){ //發生事件後續的處理... System.out.println("Redo"); } } //點選Open單選的事件發生之後... public void itemStateChanged(ItemEvent e) { // TODO Auto-generated method stub openState = !openState; System.out.println(openState); } public static void main(String[] args) { // TODO Auto-generated method stub new AWTExample(); } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.105.89.169
shevchenlun:先謝謝你!!不過"單選"不是打錯~我是真的要單選的Menu 11/20 23:34
※ 編輯: tzeng0401 來自: 59.105.89.169 (11/21 00:16) ※ 編輯: tzeng0401 來自: 59.105.89.169 (11/21 00:21)