简单记事本
实验代码
package yuan; import javax.swing.*; import java.awt.*; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.File; import static javax.swing.KeyStroke.*; public class Jishiben { public static void main(String[] args) { JFrame frame; JMenuBar bar; JMenu fileMenu,editMenu; JMenuItem newItem,openItem,saveItem,closeItem; JScrollPane scroll; JTextArea area; JFileChooser chooser; File file; } public Jishiben(){ JFrame frame = new JFrame("记事本"); JMenuBar bar = new JMenuBar(); JMenu fileMenu = new JMenu("文件"); JMenu editMenu = new JMenu("编辑"); Icon newIcon = null; JMenuItem newItem = new JMenuItem("新建(N)",newIcon); Icon openIcon = null; JMenuItem openItem = new JMenuItem("打开(O)",openIcon); Icon saveIcon = null; JMenuItem saveItem = new JMenuItem("另存为(A)",saveIcon); Icon closeIcon = null; JMenuItem closeItem = new JMenuItem("关闭(X)",closeIcon); JTextArea area = new JTextArea(); newItem.setMnemonic(KeyEvent.VK_N); openItem.setMnemonic(KeyEvent.VK_O); saveItem.setMnemonic(KeyEvent.VK_A); closeItem.setMnemonic(KeyEvent.VK_X); newItem.setAccelerator(KeyStroke.getKeyStroke((char) KeyEvent.CTRL_MASK)); fileMenu.add(newItem); fileMenu.add(openItem); fileMenu.add(saveItem); fileMenu.add(closeItem); bar.add(fileMenu); bar.add(editMenu); frame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent arg0){ System.exit(1); }}); frame.setJMenuBar(bar); frame.add(bar); frame.setVisible(true); frame.setSize(300,180); frame.setLocation(300,200); } }
实验运行结果截图
课程学习总结
一、菜单组件
JMenuBar组件的功能是用来摆放JMenu组件,当建立完多个JMenu组件之后,需要通过JMenuBar组件来将JMmenu组件加入到窗口中
1.JMenu与JMenuBar的常用方法
2.JMenuItem。如果菜单中要加入菜单项,可以使用JMenuItem
JMenuItem继承AbstractButton类,因此JMenuItem也可以理解为一种特殊的JButton组件,当选择某个菜单项时也会触发ActionEvent事件。
3.事件处理
JMenu与JButton都是AbstractButton类的子类,所以事件处理机制是完全一样的,选择一个菜单项实际上与单击一个按钮的效果是完全一样的。
4.文件选择框JFileChooser
(1)在使用记事本或word时,可以通过文件选择框选择要打开或保存的文件,在Swing中JFileChooser组件实现此功能。
(2)文件选择框的三种返回状态
如果需要保存文件,则通过文件选择框选择文件保存的路径。
二、学习感悟:
1.同大多数人一样每天编程,加油努力。
2.提高效率。勤奋和坚持。