📄 mynote.java
字号:
//package MyNote;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class MyNote extends JFrame implements ActionListener
{
private JMenuBar menubar;
private JMenu menufile;
private JMenu menuhelp;
private JMenu format;
private JMenuItem openitem;
private JMenuItem saveitem;
private JMenuItem exititem;
private JMenuItem aboutitem;
private JTextArea edit;
public MyNote()
{
super("MyNote");
setLocation(200, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
MyNote note = new MyNote();
note.createGUI();
note.pack();
note.setVisible(true);
}
private void createGUI()
{
edit = new JTextArea(20,40);
JScrollPane scoll = new JScrollPane(edit);
JPanel pane = new JPanel();
pane.setLayout(new BorderLayout());
pane.add("Center",scoll);
this.setContentPane(pane);
menubar = new JMenuBar();
menufile = new JMenu("File");
menuhelp = new JMenu("Help");
openitem = new JMenuItem("open");
openitem.setAccelerator( //快捷键ctrl+o
KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));
saveitem = new JMenuItem("save");
saveitem.setAccelerator( //快捷键
KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
exititem = new JMenuItem("exit");
aboutitem= new JMenuItem("about");
openitem.addActionListener(this);
saveitem.addActionListener(this);
exititem.addActionListener(this);
aboutitem.addActionListener(this);
menufile.add(openitem);
menufile.add(saveitem);
menufile.add(exititem);
menuhelp.add(aboutitem);
menubar.add(menufile);
menubar.add(menuhelp);
setJMenuBar(menubar);
}
public void actionPerformed(ActionEvent e)
{
Object source = e.getSource();
if(source == openitem)
{
openfile();
}
if(source == saveitem)
{
savefile();
}
if(source==exititem)
{
//this.setVisible(false);
System.exit(0);
}
if(source==aboutitem)
{
JOptionPane.showMessageDialog(null,"程波倾力打造的记事本程序");
}
// fileArea.
}
private void openfile()
{
JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new File("."));
chooser.setAcceptAllFileFilterUsed(false);
//显示文本文件
chooser.setFileFilter(
new javax.swing.filechooser.FileFilter()
{
public boolean accept(File f) //设定可用的文件的后缀名
{
if(f.isDirectory()||f.getName().endsWith(".txt"))
{
return true;
}
return false;
}
public String getDescription()
{
return "文本文件(*.txt)";
}
}
);
//显示所有文件
chooser.addChoosableFileFilter(
new javax.swing.filechooser.FileFilter()
{
public boolean accept(File f)
{
return true;
}
public String getDescription()
{
return "所有文件(*.*)";
}
}
);
int reply = chooser.showOpenDialog(this);
if(reply==chooser.APPROVE_OPTION)
{
File selectfile=chooser.getSelectedFile();
try
{
BufferedReader infile = new BufferedReader(
new FileReader(selectfile));
edit.setText("");
String line;
while((line=infile.readLine())!=null)
{
edit.append(line+"\n");
}
infile.close();
}
catch(IOException e)
{
System.out.println(e.toString());
}
}
}
private void savefile()
{
JFileChooser chooser = new JFileChooser();
chooser.setCurrentDirectory(new File("."));
//显示文本文件
chooser.setFileFilter(
new javax.swing.filechooser.FileFilter()
{
public boolean accept(File f) //设定可用的文件的后缀名
{
if(f.isDirectory()||f.getName().endsWith(".txt"))
{
return true;
}
return false;
}
public String getDescription()
{
return "文本文件(*.txt)";
}
}
);
int reply = chooser.showSaveDialog(this);
if(reply==chooser.APPROVE_OPTION)
{
File selectfile=chooser.getSelectedFile();
Boolean bl=selectfile.getName().endsWith(".txt");
if(bl==false)
selectfile=new File(selectfile.getAbsolutePath()+".txt");
try
{
PrintWriter outfile = new PrintWriter(
new FileWriter(selectfile),true);
outfile.print(edit.getText());
outfile.close();
}
catch(IOException e)
{
System.out.println(e.toString());
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -