计事本的源代码.docx
《计事本的源代码.docx》由会员分享,可在线阅读,更多相关《计事本的源代码.docx(34页珍藏版)》请在冰豆网上搜索。
计事本的源代码
packagewangfushen;
importjavax.swing.SwingUtilities;
importjava.awt.BorderLayout;
importjava.awt.GridLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.InputEvent;
importjava.awt.event.KeyEvent;
importjava.io.BufferedWriter;
importjava.io.File;
importjava.io.FileNotFoundException;
importjava.io.FileReader;
importjava.io.FileWriter;
importjava.io.IOException;
importjavax.swing.JButton;
importjavax.swing.JCheckBoxMenuItem;
importjavax.swing.JDialog;
importjavax.swing.JFileChooser;
importjavax.swing.JLabel;
importjavax.swing.JOptionPane;
importjavax.swing.JPanel;
importjavax.swing.JFrame;
importjavax.swing.JMenuBar;
importjavax.swing.JMenu;
importjavax.swing.JPopupMenu;
importjavax.swing.JTextArea;
importjavax.swing.JMenuItem;
importjavax.swing.JTextField;
importjavax.swing.KeyStroke;
importjavax.swing.filechooser.FileFilter;
importjavax.swing.JScrollPane;
importjava.awt.Point;
publicclassnotebookextendsJFrameimplementsActionListener{
privatestaticfinallongserialVersionUID=1L;
booleanisSave=true;//是否被保存过
privateJPaneljContentPane=null;
privateJMenuBarj=null;
privateJMenub1=null;
privateJMenub2=null;
privateJMenub3=null;
privateJMenub4=null;
privateJMenub5=null;
privateJTextAreat1=null;
privateJMenuItem新建=null;
privateJMenuItem打开=null;
privateJMenuItem保存=null;
privateJMenuItem另存为=null;
privateJMenuItem退出=null;
privateJMenuItem剪切=null;
privateJMenuItem复制=null;
privateJMenuItem粘贴=null;
privateJMenuItem删除=null;
privateJMenuItem字体切换=null;
privateJMenuItem状态栏=null;
privateJMenuItem关于记事本=null;
privateJScrollPanep=null;
staticStringpath=null;
privateJPopupMenujP1=null;//@jve:
decl-index=0:
visual-constraint="634,187"
privateJMenuItemjM1=null;
privateJMenuItemjM2=null;
privateJMenuItemjM3=null;
privateJMenuItemjM4=null;
privateJMenuItemjM5=null;
privateJMenuItemjM6=null;
privateJMenuItemjM7=null;
/**
*Thismethodinitializesj
*
*@returnjavax.swing.JMenuBar
*/
privateJMenuBargetJ(){
if(j==null){
j=newJMenuBar();
j.add(getB1());
j.add(getB2());
j.add(getB3());
j.add(getB4());
j.add(getB5());
}
returnj;
}
/**
*Thismethodinitializesb1
*
*@returnjavax.swing.JMenu
*/
privateJMenugetB1(){
if(b1==null){
b1=newJMenu();
b1.setText("文件(F)");
b1.setMnemonic(KeyEvent.VK_F);
b1.add(get新建());
b1.add(get打开());
b1.add(get保存());
b1.add(get另存为());
b1.add(get退出());
}
returnb1;
}
/**
*Thismethodinitializesb2
*
*@returnjavax.swing.JMenu
*/
privateJMenugetB2(){
if(b2==null){
b2=newJMenu();
b2.setText("编辑(E)");
b2.setMnemonic(KeyEvent.VK_E);
b2.add(get剪切());
b2.add(get复制());
b2.add(get粘贴());
b2.add(get删除());
}
returnb2;
}
/**
*Thismethodinitializesb3
*
*@returnjavax.swing.JMenu
*/
privateJMenugetB3(){
if(b3==null){
b3=newJMenu();
b3.setText("格式(O)");
b3.setMnemonic(KeyEvent.VK_O);
b3.add(get字体切换());
}
returnb3;
}
/**
*Thismethodinitializesb4
*
*@returnjavax.swing.JMenu
*/
privateJMenugetB4(){
if(b4==null){
b4=newJMenu();
b4.setText("查看(V)");
b4.setMnemonic(KeyEvent.VK_V);
b4.add(get状态栏());
}
returnb4;
}
/**
*Thismethodinitializesb5
*
*@returnjavax.swing.JMenu
*/
privateJMenugetB5(){
if(b5==null){
b5=newJMenu();
b5.setText("帮助(H)");
b5.setMnemonic(KeyEvent.VK_H);
b5.add(get关于记事本());
}
returnb5;
}
/**
*Thismethodinitializest1
*
*@returnjavax.swing.JTextArea
*/
privateJTextAreagetT1(){
if(t1==null){
t1=newJTextArea();
t1.addCaretListener(newjavax.swing.event.CaretListener(){
publicvoidcaretUpdate(javax.swing.event.CaretEvente){
System.out.println("caretUpdate()");//TODOAuto-generatedEventstubcaretUpdate()
isSave=false;
t1.setComponentPopupMenu(getJP1());
}
});
}
returnt1;
}
/**
*Thismethodinitializes新建
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget新建(){
if(新建==null){
新建=newJMenuItem();
新建.setText("新建(N)Ctrl+N");
新建.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK));
新建.addActionListener(this);
}
return新建;
}
/**
*Thismethodinitializes打开
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget打开(){
if(打开==null){
打开=newJMenuItem();
打开.setText("打开(O)Ctrl+O");
打开.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));
打开.addActionListener(this);
}
return打开;
}
/**
*Thismethodinitializes保存
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget保存(){
if(保存==null){
保存=newJMenuItem();
保存.setText("保存(S)Ctrl+S");
保存.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
保存.addActionListener(this);
}
return保存;
}
/**
*Thismethodinitializes另存为
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget另存为(){
if(另存为==null){
另存为=newJMenuItem();
另存为.setText("另存为(A)");
另存为.addActionListener(this);
}
return另存为;
}
/**
*Thismethodinitializes退出
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget退出(){
if(退出==null){
退出=newJMenuItem();
退出.setText("退出(X)");
退出.addActionListener(this);
b1.addSeparator();
}
return退出;
}
/**
*Thismethodinitializes剪切
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget剪切(){
if(剪切==null){
剪切=newJMenuItem();
剪切.setText("剪切(T)Ctrl+X");
剪切.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK));
剪切.addActionListener(this);
}
return剪切;
}
/**
*Thismethodinitializes复制
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget复制(){
if(复制==null){
复制=newJMenuItem();
复制.setText("复制(C)Ctrl+C");
复制.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK));
复制.addActionListener(this);
}
return复制;
}
/**
*Thismethodinitializes粘贴
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget粘贴(){
if(粘贴==null){
粘贴=newJMenuItem();
粘贴.setText("粘贴(P)Ctrl+V");
粘贴.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_MASK));
粘贴.addActionListener(this);
}
return粘贴;
}
/**
*Thismethodinitializes删除
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget删除(){
if(删除==null){
删除=newJMenuItem();
删除.setText("删除(L)Del");
删除.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE,InputEvent.CTRL_MASK));
删除.addActionListener(this);
}
return删除;
}
/**
*Thismethodinitializes字体切换
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget字体切换(){
if(字体切换==null){
字体切换=newJMenuItem();
字体切换.setText("字体切换(F)");
字体切换.addActionListener(this);
}
return字体切换;
}
/**
*Thismethodinitializes状态栏
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget状态栏(){
if(状态栏==null){
状态栏=newJMenuItem();
状态栏.setText("状态栏(S)");
状态栏.setEnabled(false);
状态栏.setVisible(true);
状态栏.addActionListener(this);
}
return状态栏;
}
/**
*Thismethodinitializes关于记事本
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemget关于记事本(){
if(关于记事本==null){
关于记事本=newJMenuItem();
关于记事本.setText("关于记事本");
关于记事本.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
System.out.println("actionPerformed()");//TODOAuto-generatedEventstubactionPerformed()
JOptionPane.showMessageDialog(null,"编辑:
王福深\n\t09级计算机科学与技术二班\n\t记事本1.0版","关于记事本",JOptionPane.INFORMATION_MESSAGE);
}
});
}
return关于记事本;
}
/**
*Thismethodinitializesp
*
*@returnjavax.swing.JScrollPane
*/
privateJScrollPanegetP(){
if(p==null){
p=newJScrollPane();
p.setViewportView(getT1());
}
returnp;
}
/**
*ThismethodinitializesjP1
*
*@returnjavax.swing.JPopupMenu
*/
privateJPopupMenugetJP1(){
if(jP1==null){
jP1=newJPopupMenu();
jP1.add(getJM1());
jP1.add(getJM2());
jP1.add(getJM3());
jP1.add(getJM4());
jP1.add(getJM5());
jP1.add(getJM6());
jP1.add(getJM7());
}
returnjP1;
}
/**
*ThismethodinitializesjM1
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJM1(){
if(jM1==null){
jM1=newJMenuItem();
jM1.setText("剪切");
jM1.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK));
}
returnjM1;
}
/**
*ThismethodinitializesjM2
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJM2(){
if(jM2==null){
jM2=newJMenuItem();
jM2.setText("复制");
jM2.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
t1.copy();
jM2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,
InputEvent.CTRL_MASK));
}
});
}
returnjM2;
}
/**
*ThismethodinitializesjM3
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJM3(){
if(jM3==null){
jM3=newJMenuItem();
jM3.setText("粘贴");
jM3.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_MASK));
jM3.addActionListener(newjava.awt.event.ActionListener(){
publicvoid