Java记事本源代码完整.docx

上传人:b****0 文档编号:17061207 上传时间:2023-07-21 格式:DOCX 页数:19 大小:19.16KB
下载 相关 举报
Java记事本源代码完整.docx_第1页
第1页 / 共19页
Java记事本源代码完整.docx_第2页
第2页 / 共19页
Java记事本源代码完整.docx_第3页
第3页 / 共19页
Java记事本源代码完整.docx_第4页
第4页 / 共19页
Java记事本源代码完整.docx_第5页
第5页 / 共19页
Java记事本源代码完整.docx_第6页
第6页 / 共19页
Java记事本源代码完整.docx_第7页
第7页 / 共19页
Java记事本源代码完整.docx_第8页
第8页 / 共19页
Java记事本源代码完整.docx_第9页
第9页 / 共19页
Java记事本源代码完整.docx_第10页
第10页 / 共19页
Java记事本源代码完整.docx_第11页
第11页 / 共19页
Java记事本源代码完整.docx_第12页
第12页 / 共19页
Java记事本源代码完整.docx_第13页
第13页 / 共19页
Java记事本源代码完整.docx_第14页
第14页 / 共19页
Java记事本源代码完整.docx_第15页
第15页 / 共19页
Java记事本源代码完整.docx_第16页
第16页 / 共19页
Java记事本源代码完整.docx_第17页
第17页 / 共19页
Java记事本源代码完整.docx_第18页
第18页 / 共19页
Java记事本源代码完整.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Java记事本源代码完整.docx

《Java记事本源代码完整.docx》由会员分享,可在线阅读,更多相关《Java记事本源代码完整.docx(19页珍藏版)》请在冰点文库上搜索。

Java记事本源代码完整.docx

Java记事本源代码完整

/**

*作品:

记事本

****

*功能:

简单的文字编辑

*/

importjava.awt.*;

importjava.awt.event.*;

importjava.io.*;

importjavax.swing.*;

importjavax.swing.event.ChangeEvent;

importjavax.swing.event.ChangeListener;

classNotePadextendsJFrame{

privateJMenuBarmenuBar;

privateJMenufielMenu,editMenu,formMenu,aboutMenu;

privateJMenuItemnewMenuItem,openMenuItem,saveMenuItem,exitMenuItem;

privateJMenuItemcutMenuItem,copyMenuItem,pasteMenuItem,foundItem,replaceItem,selectAll;

privateJMenuItemfont,about;

privateJTextAreatextArea;

privateJFramefoundFrame,replaceFrame;

privateJCheckBoxMenuItemwrapline;

privateJTextFieldtextField1=newJTextField(15);

privateJTextFieldtextField2=newJTextField(15);

privateuttonstartButton,replaceButton,reallButton;

intstart=0;

Stringvalue;

Filefile=null;

JFileChooserfileChooser=newJFileChooser();

booleanwrap=false;

publicNotePad(){

//创建文本域

textArea=newJTextArea();

add(newJScrollPane(textArea),BorderLayout.CENTER);

//创建文件菜单与文件菜单项

fielMenu=newJMenu("文件");

fielMenu.setFont(newFont("微软雅黑",0,15));

newMenuItem=newJMenuItem("新建",newImageIcon("icons\\new24.gif"));

newMenuItem.setFont(newFont("微软雅黑",Font.BOLD,13));

newMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK));

newMenuItem.addActionListener(listener);

openMenuItem=newJMenuItem("打开",newImageIcon("icons\\open24.gif"));

openMenuItem.setFont(newFont("微软雅黑",Font.BOLD,13));

openMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK));

openMenuItem.addActionListener(listener);

saveMenuItem=newJMenuItem("保存",newImageIcon("icons\\save.gif"));

saveMenuItem.setFont(newFont("微软雅黑",Font.BOLD,13));

saveMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));

saveMenuItem.addActionListener(listener);

exitMenuItem=newJMenuItem("退出",newImageIcon("icons\\exit24.gif"));

exitMenuItem.setFont(newFont("微软雅黑",Font.BOLD,13));

exitMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E,InputEvent.CTRL_MASK));

exitMenuItem.addActionListener(listener);

//创建编辑菜单与菜单项

editMenu=newJMenu("编辑");

editMenu.setFont(newFont("微软雅黑",0,15));

cutMenuItem=newJMenuItem("剪切",newImageIcon("icons\\cut24.gif"));

cutMenuItem.setFont(newFont("微软雅黑",Font.BOLD,13));

cutMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK));

cutMenuItem.addActionListener(listener);

copyMenuItem=newJMenuItem("复制",newImageIcon("icons\\copy24.gif"));

copyMenuItem.setFont(newFont("微软雅黑",Font.BOLD,13));

copyMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK));

copyMenuItem.addActionListener(listener);

pasteMenuItem=newJMenuItem("粘贴",newImageIcon("icons\\paste24.gif"));

pasteMenuItem.setFont(newFont("微软雅黑",Font.BOLD,13));

pasteMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_MASK));

pasteMenuItem.addActionListener(listener);

foundItem=newJMenuItem("查找");

foundItem.setFont(newFont("微软雅黑",Font.BOLD,13));

foundItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F,InputEvent.CTRL_MASK));

foundItem.addActionListener(listener);

replaceItem=newJMenuItem("替换");

replaceItem.setFont(newFont("微软雅黑",Font.BOLD,13));

replaceItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_R,InputEvent.CTRL_MASK));

replaceItem.addActionListener(listener);

selectAll=newJMenuItem("全选");

selectAll.setFont(newFont("微软雅黑",Font.BOLD,13));

selectAll.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_MASK));

selectAll.addActionListener(listener);

//创建格式菜单与菜单项

formMenu=newJMenu("格式");

formMenu.setFont(newFont("微软雅黑",0,15));

wrapline=newJCheckBoxMenuItem("自动换行");

wrapline.setFont(newFont("微软雅黑",Font.BOLD,13));

wrapline.addActionListener(listener);

wrapline.addChangeListener(newChangeListener(){

publicvoidstateChanged(ChangeEvente){

if(wrapline.isSelected()){

textArea.setLineWrap(true);

}

else

textArea.setLineWrap(false);

}

});

font=newJMenuItem("字体");

font.setFont(newFont("微软雅黑",Font.BOLD,13));

font.addActionListener(listener);

//创建关于菜单

aboutMenu=newJMenu("关于");

aboutMenu.setFont(newFont("微软雅黑",0,15));

about=newJMenuItem("记事本……");

about.setFont(newFont("微软雅黑",Font.BOLD,13));

about.addActionListener(listener);

//添加文件菜单项

fielMenu.add(newMenuItem);

fielMenu.add(openMenuItem);

fielMenu.add(saveMenuItem);

fielMenu.addSeparator();

fielMenu.add(exitMenuItem);

//添加编辑菜单项

editMenu.add(cutMenuItem);

editMenu.add(copyMenuItem);

editMenu.add(pasteMenuItem);

editMenu.add(foundItem);

editMenu.add(replaceItem);

editMenu.addSeparator();

editMenu.add(selectAll);

//添加格式菜单项

formMenu.add(wrapline);

formMenu.add(font);

//添加关于菜单项

aboutMenu.add(about);

//添加菜单

menuBar=newJMenuBar();

menuBar.add(fielMenu);

menuBar.add(editMenu);

menuBar.add(formMenu);

menuBar.add(aboutMenu);

setJMenuBar(menuBar);

//创建两个框架,用作查找和替换

foundFrame=newJFrame();

replaceFrame=newJFrame();

//创建两个文本框

textField1=newJTextField(15);

textField2=newJTextField(15);

startButton=newutton("开始");

startButton.addActionListener(listener);

replaceButton=newutton("替换为");

replaceButton.addActionListener(listener);

reallButton=newutton("全部替换");

reallButton.addActionListener(listener);

}

//创建菜单项事件监听器

ActionListenerlistener=newActionListener(){

publicvoidactionPerformed(ActionEvente){

Stringname=e.getActionCommand();

if(e.getSource()instanceofJMenuItem){

if("新建".equals(name)){

textArea.setText("");

file=null;

}

if("打开".equals(name)){

if(file!

=null){

fileChooser.setSelectedFile(file);

}

intreturnVal=fileChooser.showOpenDialog(NotePad.this);

if(returnVal==JFileChooser.APPROVE_OPTION){

file=fileChooser.getSelectedFile();

}

try{

FileReaderreader=newFileReader(file);

intlen=(int)file.length();

char[]array=newchar[len];

reader.read(array,0,len);

reader.close();

textArea.setText(newString(array));

}

catch(Exceptione_open){

e_open.printStackTrace();

}

}

}

if("保存".equals(name)){

if(file!

=null){

fileChooser.setSelectedFile(file);

}

intreturnVal=fileChooser.showSaveDialog(NotePad.this);

if(returnVal==JFileChooser.APPROVE_OPTION){

file=fileChooser.getSelectedFile();

}

try{

FileWriterwriter=newFileWriter(file);

writer.write(textArea.getText());

writer.close();

}

catch(Exceptione_save){

e_save.getStackTrace();

}

}

if("退出".equals(name)){

System.exit(0);

}

if("剪切".equals(name)){

textArea.cut();

}

if("复制".equals(name)){

textArea.copy();

}

if("粘贴".equals(name)){

textArea.paste();

}

if("查找".equals(name)){

value=textArea.getText();

foundFrame.add(textField1,BorderLayout.CENTER);

foundFrame.add(startButton,BorderLayout.SOUTH);

foundFrame.setLocation(300,300);

foundFrame.setTitle("查找");

foundFrame.pack();

foundFrame.setVisible(true);

foundFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

}

if("替换".equals(name)){

value=textArea.getText();

JLabellabel1=newJLabel("查找容:

");

JLabellabel2=newJLabel("替换为:

");

JPanelpanel1=newJPanel();

panel1.setLayout(newGridLayout(2,2));

JPanelpanel2=newJPanel();

panel2.setLayout(newGridLayout(1,3));

replaceFrame.add(panel1,BorderLayout.NORTH);

replaceFrame.add(panel2,BorderLayout.CENTER);

panel1.add(label1);

panel1.add(textField1);

panel1.add(label2);

panel1.add(textField2);

panel2.add(startButton);

panel2.add(replaceButton);

panel2.add(reallButton);

replaceFrame.setTitle("替换");

replaceFrame.setLocation(300,300);

replaceFrame.pack();

replaceFrame.setVisible(true);

replaceFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

}

if("开始".equals(name)||"下一个".equals(name)){

Stringtemp=textField1.getText();

ints=value.indexOf(temp,start);

if(value.indexOf(temp,start)!

=-1){

textArea.setSelectionStart(s);

textArea.setSelectionEnd(s+temp.length());

textArea.setSelectedTextColor(Color.GREEN);

start=s+1;

startButton.setText("下一个");

}else{

JOptionPane.showMessageDialog(foundFrame,"查找完毕!

","提示",0,newImageIcon("icons\\search.gif"));

foundFrame.dispose();

}

}

if("替换为".equals(name)){

Stringtemp=textField1.getText();

ints=value.indexOf(temp,start);

if(value.indexOf(temp,start)!

=-1){

textArea.setSelectionStart(s);

textArea.setSelectionEnd(s+temp.length());

textArea.setSelectedTextColor(Color.GREEN);

start=s+1;

textArea.replaceSelection(textField2.getText());

}else{

JOptionPane.showMessageDialog(foundFrame,"查找完毕!

","提示",0,newImageIcon("icons\\search.gif"));

foundFrame.dispose();

}

}

if("全部替换".equals(name)){

Stringtemp=textArea.getText();

temp=temp.replaceAll(textField1.getText(),textField2.getText());

textArea.setText(temp);

}

if("全选".equals(name)){

textArea.selectAll();

}

if("字体".equals(name)){

FontDialogfontDialog=newFontDialog(NotePad.this);

fontDialog.setVisible(true);

if(textArea.getFont()!

=fontDialog.getFont()){

textArea.setFont(fontDialog.getFont());

}

}

if("记事本……".equals(name)){

AboutDialogaboutDialog=newAboutDialog(NotePad.this);

aboutDialog.setVisible(true);

}

}

};

//创建字体设置对话面板,并添加相应事件监听器

classFontDialogextendsJDialogimplementsItemListener,ActionListener,WindowListener{

publicJCheckBoxBold=newJCheckBox("Bold",false);

publicJCheckBoxItalic=newJCheckBox("Italic",false);

publicListSize,Name;

publicintFontName;

publicintFontStyle;

publicintFontSize;

publicuttonOK=newutton("OK");

publicuttonCancel=newutton("Cancel");

publicJTextAreaText=newJTextArea("字体预览文本域\n0123456789\nAaBbCcXxYyZz");

publicFontDialog(JFrameowner){

super(owner,"字体设置",true);

GraphicsEnvironmentg=GraphicsEnvironment.getLocalGraphicsEnvironment();

Stringname[]=g.getAvaila

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

当前位置:首页 > 经管营销 > 经济市场

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

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