public static void main(String[] args) {
final JFrame jf=new JFrame("我的记事本");
jf.setSize(500,500);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//多行文本框
final JTextArea txt = new JTextArea();
//滚动面板
JScrollPane panel=new JScrollPane(txt);
//创建菜单栏
JMenuBar bar=new JMenuBar();
//创建一级菜单
JMenu fileMeun=new JMenu("文件(F)");
fileMeun.setMnemonic('F');//设置打开快捷键
JMenu editMenu=new JMenu("编辑");
JMenu viewMenu=new JMenu("视图");
JMenu aboutMenu=new JMenu("关于");
//创建文件菜单项
// JMenuItem newMenuItem= new JMenuItem("新建",new ImageIcon("src/image/title.png"));
JMenuItem newMenuItem= new JMenuItem("新建");
//菜单项添加事件
newMenuItem.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
txt.setText(""); //清空
}
});
JMenuItem openMenuItem= new JMenuItem("打开");
//打开项事件
openMenuItem.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//文件选择器
JFileChooser chooser=new JFileChooser(new File("E:/"));
chooser.setMultiSelectionEnabled(false);//不允许多选
int result=chooser.showOpenDialog(jf);
if(result==JFileChooser.APPROVE_OPTION){
//取得选择的文件
File file=chooser.getSelectedFile();
//读取文件绝对路径
System.out.println(file.getAbsolutePath());
File files = new File(file.getAbsolutePath());
String txtInfo = "";
if(files.isFile()&&files.exists()){
try{
InputStreamReader read = new InputStreamReader(
new FileInputStream(files),"gbk");
BufferedReader bufferedReader = new BufferedReader(read);
txtInfo= bufferedReader.readLine();
txt.setText(txtInfo);
read.close();
txt.setText(txtInfo);
}catch (Exception e1){
System.out.println("在FileInputStreamTest.java文件中 IO读取文件失败");
}
}
}
}
});
JMenuItem exitMenuItem= new JMenuItem("新建");
//将菜单添加到菜单栏中
fileMeun.add(newMenuItem);
fileMeun.add(openMenuItem);
fileMeun.addSeparator(); //添加分割线
fileMeun.add(exitMenuItem);
//编辑菜单
JMenuItem copyMenuItem=new JMenuItem("复制");
JMenuItem pasteMenuItem=new JMenuItem("粘贴");
editMenu.add(copyMenuItem);
editMenu.add(pasteMenuItem);
//视图菜单
JCheckBoxMenuItem boxMenuItem=new JCheckBoxMenuItem("自动换行");
JRadioButtonMenuItem radioButton1=new JRadioButtonMenuItem("字体较大");
JRadioButtonMenuItem radioButton2=new JRadioButtonMenuItem("字体较小");
//将视图的子菜单添加到菜单中
viewMenu.add(boxMenuItem);
viewMenu.addSeparator(); //添加分割线
viewMenu.add(radioButton1);
viewMenu.add(radioButton2);
//将单选进行组合
ButtonGroup bg=new ButtonGroup();
bg.add(radioButton1);
bg.add(radioButton2);
//默认第一个选中
radioButton1.setSelected(true);
//将一级菜单添加到菜单栏
bar.add(fileMeun);
bar.add(editMenu);
bar.add(viewMenu);
bar.add(aboutMenu);
//将菜单栏放到窗口中
jf.setJMenuBar(bar);
jf.setContentPane(panel);
jf.setVisible(true);
}