本人暂时只实现了新建操作,另外几个操作上课听老师讲的操作感觉那样,但自己来写还是不太会。
package caidan;
import java.awt.event.*;
import java.io.File;
import javax.swing.*;
public class JMenuDemo1 implements ActionListener {
JFrame frame;
JMenuBar bar;
JMenu fileMenu,editMenu;
JMenuItem newItem,openItem,saveItem,closeItem;
ImageIcon newIcon,openIcon,saveIcon,closeIcon;
JScrollPane scorll;
JTextArea area;
File file;
private JFileChooser chooser;
public JMenuDemo1(){
frame = new JFrame("小本本");
bar = new JMenuBar();
fileMenu = new JMenu("文件");
editMenu = new JMenu("编辑");
newItem = new JMenuItem("新建(N)",newIcon);
openItem = new JMenuItem("打开(O)",openIcon);
saveItem = new JMenuItem("另存为(A)",saveIcon);
closeItem = new JMenuItem("关闭(X)",closeIcon);
newIcon = new ImageIcon("d:"+File.separator+"新建.png");
openIcon = new ImageIcon("D:"+File.separator+"打开.png");
saveIcon = new ImageIcon("D:"+File.separator+"另存为.png");
closeIcon = new ImageIcon("D:"+File.separator+"关闭.png");
area = new JTextArea();
scorll = new JScrollPane(area);
newItem.setMnemonic(KeyEvent.VK_N);
openItem.setMnemonic(KeyEvent.VK_O);
saveItem.setMnemonic(KeyEvent.VK_A);
closeItem.setMnemonic(KeyEvent.VK_X);
fileMenu.add(newItem);
fileMenu.add(openItem);
fileMenu.add(saveItem);
fileMenu.addSeparator();
fileMenu.add(closeItem);
newItem.addActionListener(this);
openItem.addActionListener(this);
saveItem.addActionListener(this);
closeItem.addActionListener(this);
bar.add(fileMenu);
bar.add(editMenu);
frame.setJMenuBar(bar);
frame.add(scorll);
frame.setSize(400, 300);
frame.setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
Object obj = e.getSource();
if (obj instanceof JMenuItem) {
JMenuItem item = (JMenuItem) obj;
if (item == newItem) {
new JMenuDemo1();
}else if (item == openItem) {
chooser = new JFileChooser();
chooser.showOpenDialog(null);
file = chooser.getSelectedFile();
}
}
}
}
main方法
package caidan;
public class JMenuDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
new JMenuDemo1();
}
}
原文:https://www.cnblogs.com/lxzlyf2022/p/11910114.html