[java]代码库package day03;
import java.awt.event.ActionEvent;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.KeyStroke;
public class TestMenu {
public static void main(String[] args) {
// TODO Auto-generated method stub
JFrame frame = new TestMenuFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
class TestMenuFrame extends JFrame{
public TestMenuFrame(){
setTitle("测试菜单");
setSize(300,400);
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu fileMenu = new JMenu("文件");
menuBar.add(fileMenu);
JMenuItem newItem = fileMenu.add(new TestAction("新建"));
JMenuItem openItem= fileMenu.add(new TestAction("打开"));
fileMenu.addSeparator();
JMenuItem saveItem = fileMenu.add(new TestAction("保存"));
JMenuItem saveasItem = fileMenu.add(new TestAction("另存为"));
fileMenu.addSeparator();
JMenuItem exitItem = new JMenuItem("Exit");
fileMenu.add(exitItem);
exitItem.addActionListener(new AbstractAction(){
public void actionPerformed(ActionEvent event){
System.exit(0);
}
});
newItem.setAccelerator(KeyStroke.getKeyStroke("ctrl N"));
openItem.setAccelerator(KeyStroke.getKeyStroke("ctrl O"));
saveItem.setAccelerator(KeyStroke.getKeyStroke("ctrl S"));
}
}
class TestAction extends AbstractAction{
public TestAction(String name ){
super(name);
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.out.println(getValue(Action.NAME)+"selected.");
}
}