简单记事本的java程序代码.docx
《简单记事本的java程序代码.docx》由会员分享,可在线阅读,更多相关《简单记事本的java程序代码.docx(14页珍藏版)》请在冰豆网上搜索。
简单记事本的java程序代码
简单记事本的java程序代码
涉及到两个文件:
第一个文件中的代码:
packageMyProject;
importjava.awt.BorderLayout;
importjavax.swing.JPanel;
importjavax.swing.JFrame;
importjava.awt.Dimension;
importjavax.swing.JMenuBar;
importjavax.swing.JMenu;
importjavax.swing.JMenuItem;
importjavax.swing.JLabel;
importjava.awt.Rectangle;
importjavax.swing.JTextArea;
importjavax.swing.JScrollPane;
importjava.awt.datatransfer.*;
importjava.io.*;
publicclassMainFrameextendsJFrame{
privatestaticfinallongserialVersionUID=1L;
privateJPaneljContentPane=null;
privateJMenuBarjJMenuBar=null;
privateJMenujMenu=null;
privateJMenujMenu1=null;
privateJMenujMenu2=null;
privateJMenuItemjMenuItem=null;
privateJMenuItemjMenuItem1=null;
privateJMenuItemjMenuItem2=null;
privateJMenuItemjMenuItem3=null;
privateJLabeljLabel=null;
privateJScrollPanejScrollPane=null;
privateJTextAreajTextArea=null;
privateJMenuItemjMenuItem4=null;
privateJMenuItemjMenuItem5=null;
privateJMenuItemjMenuItem6=null;
privateJMenuItemjMenuItem7=null;
privatestaticMainFramemyMainFrame=null;
privatestaticStringtextstr="";///用于记录文本文件的路径
privateFilemyFile=null;
privateFileReadermyrder=null;
privateFileWritermywr=nul
Java培训l;
/**
*Thisisthedefaultconstructor
*/
publicMainFrame(){
super();
initialize();
}
/**
*Thismethodinitializesthis
*
*@returnvoid
*/
privatevoidinitialize(){
this.setSize(412,350);
this.setJMenuBar(getJJMenuBar());
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
this.addWindowListener(newjava.awt.event.WindowAdapter(){
publicvoidwindowActivated(java.awt.event.WindowEvente){
if(!
textstr.equals("")){
try{
myFile=newFile(textstr);
if(!
myFile.exists()){
myFile.createNewFile();
}
myrder=newFileReader(myFile);
char[]mychar=newchar[(int)myFile.length()];
myrder.read(mychar);
Stringtmp=newString(mychar);
jTextArea.setText(tmp);
myrder.close();
}
catch(Exceptionee){
ee.printStackTrace();
}
}
}
publicvoidwindowClosing(java.awt.event.WindowEvente){
System.exit(0);
}
});
this.setVisible(true);
myMainFrame=this;
}
/**
*ThismethodinitializesjContentPane
*
*@returnjavax.swing.JPanel
*/
privateJPanelgetJContentPane(){
if(jContentPane==null){
jLabel=newJLabel();
jLabel.setBounds(newRectangle(15,18,65,18));
jLabel.setText("文件内容:
");
jContentPane=newJPanel();
jContentPane.setLayout(null);
jContentPane.add(jLabel,null);
jContentPane.add(getJScrollPane(),null);
}
returnjContentPane;
}
/**
*ThismethodinitializesjJMenuBar
*
*@returnjavax.swing.JMenuBar
*/
privateJMenuBargetJJMenuBar(){
if(jJMenuBar==null){
jJMenuBar=newJMenuBar();
jJMenuBar.add(getJMenu());
jJMenuBar.add(getJMenu1());
jJMenuBar.add(getJMenu2());
}
returnjJMenuBar;
}
/**
*ThismethodinitializesjMenu
*
*@returnjavax.swing.JMenu
*/
privateJMenugetJMenu(){
if(jMenu==null){
jMenu=newJMenu();
jMenu.setText("文件");
jMenu.add(getJMenuItem());
jMenu.add(getJMenuItem1());
jMenu.add(getJMenuItem2());
jMenu.add(getJMenuItem3());
}
returnjMenu;
}
/**
*ThismethodinitializesjMenu1
*
*@returnjavax.swing.JMenu
*/
privateJMenugetJMenu1(){
if(jMenu1==null){
jMenu1=newJMenu();
jMenu1.setText("编辑");
jMenu1.add(getJMenuItem4());
jMenu1.add(getJMenuItem5());
jMenu1.add(getJMenuItem6());
}
returnjMenu1;
}
/**
*ThismethodinitializesjMenu2
*
*@returnjavax.swing.JMenu
*/
privateJMenugetJMenu2(){
if(jMenu2==null){
jMenu2=newJMenu();
jMenu2.setText("帮助");
jMenu2.add(getJMenuItem7());
}
returnjMenu2;
}
/**
*ThismethodinitializesjMenuItem
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJMenuItem(){
if(jMenuItem==null){
jMenuItem=newJMenuItem();
jMenuItem.setText("打开");
jMenuItem.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
MainFrame.this.myMainFrame.setEnabled(false);
SelectTextFilemysl=newSelectTextFile();
mysl.setVisible(true);
}
});
}
returnjMenuItem;
}
/**
*ThismethodinitializesjMenuItem1
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJMenuItem1(){
if(jMenuItem1==null){
jMenuItem1=newJMenuItem();
jMenuItem1.setText("关闭");
jMenuItem1.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
try{
myFile=null;
}
catch(Exceptionee){
ee.printStackTrace();
}
jTextArea.setText("");
}
});
}
returnjMenuItem1;
}
/**
*ThismethodinitializesjMenuItem2
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJMenuItem2(){
if(jMenuItem2==null){
jMenuItem2=newJMenuItem();
jMenuItem2.setText("保存");
jMenuItem2.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
try{
Stringtmp=jTextArea.getText();
char[]mychar=tmp.toCharArray();
myFile.delete();
myFile.createNewFile();
mywr=newFileWriter(myFile);
mywr.write(mychar);
mywr.close();
}
catch(Exceptionee){
ee.printStackTrace();
}
}
});
}
returnjMenuItem2;
}
/**
*ThismethodinitializesjMenuItem3
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJMenuItem3(){
if(jMenuItem3==null){
jMenuItem3=newJMenuItem();
jMenuItem3.setText("退出");
jMenuItem3.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
System.exit(0);
}
});
}
returnjMenuItem3;
}
/**
*ThismethodinitializesjScrollPane
*
*@returnjavax.swing.JScrollPane
*/
privateJScrollPanegetJScrollPane(){
if(jScrollPane==null){
jScrollPane=newJScrollPane();
jScrollPane.setBounds(newRectangle(15,46,371,225));
jScrollPane.setViewportView(getJTextArea());
}
returnjScrollPane;
}
/**
*ThismethodinitializesjTextArea
*
*@returnjavax.swing.JTextArea
*/
privateJTextAreagetJTextArea(){
if(jTextArea==null){
jTextArea=newJTextArea();
}
returnjTextArea;
}
/**
*ThismethodinitializesjMenuItem4
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJMenuItem4(){
if(jMenuItem4==null){
jMenuItem4=newJMenuItem();
jMenuItem4.setText("复制");
jMenuItem4.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
MainFrame.this.setClipboardText(MainFrame.this.getToolkit().getSystemClipboard(),jTextArea.getSelectedText());
}
});
}
returnjMenuItem4;
}
/**
*ThismethodinitializesjMenuItem5
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJMenuItem5(){
if(jMenuItem5==null){
jMenuItem5=newJMenuItem();
jMenuItem5.setText("剪切");
jMenuItem5.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
MainFrame.this.setClipboardText(MainFrame.this.getToolkit().getSystemClipboard(),jTextArea.getSelectedText());
jTextArea.setText(jTextArea.getText().substring(0,jTextArea.getSelectionStart()));
}
});
}
returnjMenuItem5;
}
/**
*ThismethodinitializesjMenuItem6
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJMenuItem6(){
if(jMenuItem6==null){
jMenuItem6=newJMenuItem();
jMenuItem6.setText("黏贴");
jMenuItem6.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
try{
jTextArea.setText(jTextArea.getText().substring(0,jTextArea.getSelectionStart()));
jTextArea.setText(jTextArea.getText()+(MainFrame.this.getClipboardText(MainFrame.this.getToolkit().getSystemClipboard())));
}
catch(Exceptionee){
ee.printStackTrace();
}
}
});
}
returnjMenuItem6;
}
/**
*ThismethodinitializesjMenuItem7
*
*@returnjavax.swing.JMenuItem
*/
privateJMenuItemgetJMenuItem7(){
if(jMenuItem7==null){
jMenuItem7=newJMenuItem();
jMenuItem7.setText("关于记事本");
jMenuItem7.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEvente){
////暂无代码!
!
}
});
}
returnjMenuItem7;
}
publicstaticvoidmain(Stringargs[]){
newMainFrame();
}
publicstaticMainFramegetMyMainFrame(){
returnmyMainFrame;
}
publicstaticvoidsetMyMainFrame(MainFramemyMainFrame){
MainFrame.myMainFrame=myMainFrame;
}
publicstaticStringgetTextstr(){
returntextstr;
}
publicstaticvoidsetTextstr(Stringtextstr){
MainFrame.textstr=textstr;
}
protectedstaticStringgetClipboardText(Clipboardclip)throwsException{
TransferableclipT=clip.getContents(null);//获取剪切板中的内容
if(clipT!
=null){
if(clipT.isDataFlavorSupported(DataFlavor.stringFlavor))//检查内容是否是文本类型
return(String)clipT.getTransferData(DataFlavor.stringFlavor);
}
returnnull;
}
protectedstaticvoidsetClipboardText(Clipboardclip,StringwriteMe){
TransferabletText=newStringSelection(writeMe);
clip.setContents(tText,null);
}
}//@jve:
decl-index=0:
visual-constraint="10,10"
第二个文件中的代码:
(太长了,贴不上来)
整个效果就是实现了基本的打开、关闭、保存、退出的功能。
效果如图:
更多更全JAVA代码