记事本编辑器JAVA.docx

上传人:b****8 文档编号:9390851 上传时间:2023-05-18 格式:DOCX 页数:24 大小:18.09KB
下载 相关 举报
记事本编辑器JAVA.docx_第1页
第1页 / 共24页
记事本编辑器JAVA.docx_第2页
第2页 / 共24页
记事本编辑器JAVA.docx_第3页
第3页 / 共24页
记事本编辑器JAVA.docx_第4页
第4页 / 共24页
记事本编辑器JAVA.docx_第5页
第5页 / 共24页
记事本编辑器JAVA.docx_第6页
第6页 / 共24页
记事本编辑器JAVA.docx_第7页
第7页 / 共24页
记事本编辑器JAVA.docx_第8页
第8页 / 共24页
记事本编辑器JAVA.docx_第9页
第9页 / 共24页
记事本编辑器JAVA.docx_第10页
第10页 / 共24页
记事本编辑器JAVA.docx_第11页
第11页 / 共24页
记事本编辑器JAVA.docx_第12页
第12页 / 共24页
记事本编辑器JAVA.docx_第13页
第13页 / 共24页
记事本编辑器JAVA.docx_第14页
第14页 / 共24页
记事本编辑器JAVA.docx_第15页
第15页 / 共24页
记事本编辑器JAVA.docx_第16页
第16页 / 共24页
记事本编辑器JAVA.docx_第17页
第17页 / 共24页
记事本编辑器JAVA.docx_第18页
第18页 / 共24页
记事本编辑器JAVA.docx_第19页
第19页 / 共24页
记事本编辑器JAVA.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

记事本编辑器JAVA.docx

《记事本编辑器JAVA.docx》由会员分享,可在线阅读,更多相关《记事本编辑器JAVA.docx(24页珍藏版)》请在冰点文库上搜索。

记事本编辑器JAVA.docx

记事本编辑器JAVA

importjava.awt.BorderLayout;

importjava.awt.Button;

importjava.awt.Dialog;

importjava.awt.FileDialog;

importjava.awt.FlowLayout;

importjava.awt.Font;

importjava.awt.Frame;

importjava.awt.GridLayout;

importjava.awt.Label;

importjava.awt.List;

importjava.awt.Menu;

importjava.awt.MenuBar;

importjava.awt.MenuItem;

importjava.awt.MenuShortcut;

importjava.awt.Panel;

importjava.awt.TextArea;

importjava.awt.Toolkit;

importjava.awt.datatransfer.Clipboard;

importjava.awt.datatransfer.DataFlavor;

importjava.awt.datatransfer.StringSelection;

importjava.awt.datatransfer.Transferable;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjava.awt.event.KeyEvent;

importjava.awt.event.TextEvent;

importjava.awt.event.TextListener;

importjava.awt.event.WindowAdapter;

importjava.awt.event.WindowEvent;

importjava.io.BufferedReader;

importjava.io.BufferedWriter;

importjava.io.FileReader;

importjava.io.FileWriter;

publicclassTxtextendsFrameimplements

ActionListener,TextListener

{

//LECYKX,2010,12,1

privatestaticfinallongserialVersionUID=

1L;

//*****************初始化工作**************

MenuBarmenuBar;

MenumenuFile,menuEdi,menuFormat,menuHelp;

MenuItem

menuItemNew,menuItemOpen,menuItemSave,menuItemOsave,men

uItemExit,

menuItemCut,menuItemCopy,menuItemPase,menuItemDel,menuI

temSelectAll,

menuItemFont,menuItemAbout;

TextAreatextArea;

FileDialogfileOpen,fileSave;

Stringtemp,fileName;

MyDialogmyDialog;

booleanchange=false;

TextClipboardcb;

publicTxt()

{

super("文本编辑器");

this.setBounds(200,200,400,300);

menuBar=newMenuBar();

textArea=newTextArea();

textArea.addTextListener(this);

menuFile=newMenu("文件(F)");

menuItemNew=newMenuItem("新建(N)");

menuItemNew.setShortcut(new

MenuShortcut(KeyEvent.VK_N));

menuItemNew.addActionListener(this);

menuItemOpen=newMenuItem("打开

(O)...");

menuItemOpen.setShortcut(new

MenuShortcut(KeyEvent.VK_O));

menuItemOpen.addActionListener(this);

menuItemSave=newMenuItem("保存(S)");

menuItemSave.setShortcut(new

MenuShortcut(KeyEvent.VK_S));

menuItemSave.addActionListener(this);

menuItemOsave=newMenuItem("另存为

(A)...");

menuItemOsave.addActionListener(this);

menuItemExit=newMenuItem("退出(X)");

menuItemExit.addActionListener(this);

menuItemExit.setShortcut(new

MenuShortcut(KeyEvent.VK_E));

menuFile.add(menuItemNew);

menuFile.add(menuItemOpen);

menuFile.add(menuItemSave);

menuFile.add(menuItemOsave);

menuFile.addSeparator();

menuFile.add(menuItemExit);

menuEdi=newMenu("编辑(E)");

menuItemCut=newMenuItem("剪切(T)");

menuItemCut.setShortcut(new

MenuShortcut(KeyEvent.VK_X));

menuItemCut.addActionListener(this);

menuItemCopy=newMenuItem("复制(C)");

menuItemCopy.setShortcut(new

MenuShortcut(KeyEvent.VK_C));

menuItemCopy.addActionListener(this);

menuItemPase=newMenuItem("粘帖(P)");

menuItemPase.setShortcut(new

MenuShortcut(KeyEvent.VK_V));

menuItemPase.addActionListener(this);

menuItemDel=newMenuItem("删除(L)");

menuItemDel.addActionListener(this);

menuItemSelectAll=newMenuItem("全选

(A)");

menuItemSelectAll.setShortcut(new

MenuShortcut(KeyEvent.VK_A));

menuItemSelectAll.addActionListener

(this);

menuEdi.add(menuItemCut);

menuEdi.add(menuItemCopy);

menuEdi.add(menuItemPase);

menuEdi.add(menuItemDel);

menuEdi.addSeparator();

menuEdi.add(menuItemSelectAll);

menuFormat=newMenu("格式(O)");

menuItemFont=newMenuItem("字体...");

menuItemFont.addActionListener(this);

menuFormat.add(menuItemFont);

menuHelp=newMenu("帮助(H)");

menuItemAbout=newMenuItem("关于记事

本");

menuItemAbout.addActionListener(this);

menuHelp.add(menuItemAbout);

menuBar.add(menuFile);

menuBar.add(menuEdi);

menuBar.add(menuFormat);

menuBar.add(menuHelp);

fileName="";

myDialog=newMyDialog(this,"保存文件?

",true);

fileSave=newFileDialog(this,"保存文

件",FileDialog.SAVE);

fileSave.setBounds(200,200,400,300);

fileOpen=newFileDialog(this,"打开文

件",FileDialog.LOAD);

fileOpen.setBounds(200,200,400,300);

cb=newTextClipboard();

this.addWindowListener(new

WindowAdapter()

{

publicvoidwindowClosing

(WindowEventarg0)

{

if(fileName!

="")

{

if

(change==false)

System.exit(0);

if

(change==true)

{

save

(fileName);

System.exit(0);

}

}

if(fileName=="")

{

if

(change==false)

System.exit(0);

if

(change==true)

{

myDialog.setVisible(true);

if

(myDialog.getMessage()==MyDialog.YES)

{

fileSave.setVisible(true);

fileName=fileSave.getDirectory()+"\\"+fileSave.getFile

();

save(fileName);

System.exit(0);

}

if

(myDialog.getMessage()==MyDialog.NO)

System.exit(0);

}

}

}

});

this.setMenuBar(menuBar);

this.add(textArea);

this.setVisible(true);

}

//*****************办法**************

publicvoidopen(Stringpath)

{

try{

FileReaderfile=newFileReader

(path);

BufferedReaderread=new

BufferedReader(file);

StringBuffersb=new

StringBuffer();

while((temp=read.readLine())!

=null)

sb.append(temp+'\n');

textArea.setText(sb.toString

());

file.close();

read.close();

}catch(Exceptione){

}

}

publicvoidsave(Stringpath)

{

try{

FileWriterfile=newFileWriter

(path);

BufferedWriterbw=new

BufferedWriter(file);

bw.write(textArea.getText());

bw.close();

}

catch(Exceptione)

{

}

}

//*****************事件监听器**************

publicvoidtextValueChanged(TextEventarg0){

change=true;

}

publicvoidactionPerformed(ActionEvente)

{

if(e.getSource()==menuItemNew)

{

if(fileName!

="")

{

save(fileName);

textArea.setText("");

}

if(fileName==""&&change==true)

{

fileSave.setVisible

(true);

fileName=fileSave.getDirectory()+"\\"+fileSave.getFile

();

save(fileName);

textArea.setText("");

}

else{

textArea.setText("");

fileName="";

}

}

if(e.getSource()==menuItemOpen)

{

fileOpen.setVisible(true);

fileName=fileOpen.getDirectory

()+"\\"+fileOpen.getFile();

open(fileName);

}

if(e.getSource()==menuItemSave)

{

if(fileName!

="")

save(fileName);

else

{

fileSave.setVisible

(true);

fileName=fileSave.getDirectory()+"\\"+fileSave.getFile

();

save(fileName);

}

}

if(e.getSource()==menuItemOsave)

{

fileSave.setVisible(true);

fileName=fileSave.getDirectory

()+"\\"+fileSave.getFile();

save(fileName);

}

if(e.getSource()==menuItemExit)

{

if(fileName!

="")

{

if(change==false)

System.exit(0);

if(change==true)

{

save(fileName);

System.exit(0);

}

}

if(fileName=="")

{

if(change==false)

System.exit(0);

if(change==true)

{

myDialog.setVisible(true);

if

(myDialog.getMessage()==MyDialog.YES)

{

fileSave.setVisible(true);

fileName=fileSave.getDirectory()+"\\"+fileSave.getFile

();

save

(fileName);

System.exit(0);

}

if

(myDialog.getMessage()==MyDialog.NO)

System.exit(0);

}

}

}

if(e.getSource()==menuItemCut)

{

cb.setData

(textArea.getSelectedText());

textArea.replaceRange("",

textArea.getSelectionStart(),textArea.getSelectionEnd

());

}

if(e.getSource()==menuItemCopy)

{

cb.setData

(textArea.getSelectedText());

}

if(e.getSource()==menuItemPase)

{

textArea.replaceRange

(cb.getData(),textArea.getSelectionStart(),

textArea.getSelectionEnd());

}

if(e.getSource()==menuItemDel)

{

textArea.replaceRange("",

textArea.getSelectionStart(),textArea.getSelectionEnd

());

}

if(e.getSource()==menuItemSelectAll)

{

textArea.selectAll();

}

if(e.getSource()==menuItemFont)

{

SetFontsetfont=newSetFont

(this,"字体设置",true);

setfont.setVisible(true);

textArea.setFont

(setfont.myFont);

}

if(e.getSource()==menuItemAbout)

{

DialogAboutdiaAbout=new

DialogAbout(this,"关于文本编辑器",true);

diaAbout.setVisible(true);

}

}

publicstaticvoidmain(String[]args)

{

newTxt();

}

}

//*****************保存提示框类**************

classMyDialogextendsDialogimplementsActionListener

{

/**

*

*/

privatestaticfinallongserialVersionUID=

1L;

staticfinalintYES=1,NO=0;

intmessage=-1;

Buttonyes,no;

MyDialog(Framef,Strings,booleanb)

{

super(f,s,b);

yes=newButton("保存文件");

yes.addActionListener(this);

no=newButton("不保存并退出");

no.addActionListener(this);

setLayout(newFlowLayout());

add(yes);

add(no);

setBounds(300,300,200,80);

addWindowListener(newWindowAdapter(){

publicvoidwindowClosing

(WindowEvente){

message=-1;

setVisible(false);

}

});

}

publicvoidactionPerformed(ActionEvente){

if(e.getSource()==yes){

message=YES;

setVisible(false);

}elseif(e.getSource()==no){

message=NO;

setVisible(false);

}

}

publicintgetMessage(){

returnmessage;

}

}

//*****************关于对话框类**************

classDialogAboutextendsDialogimplements

ActionListener

{

privatestaticfinallongserialVersionUID=

1L;

Buttonbutton;

Labell;

DialogAbout(Framef,Strings,booleanb)

{

super(f,s,b);

setLayout(newFlowLayout());

button=newButton("了解");

l=newLabel("菜鸟级人物编写--LECYKX");

button.addActionListener(this);

add(l);

add(button);

setBounds(300,300,200,100);

addWindowListener(newWindowAdapter(){

publicvoidwindo

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2