用Java编写的记事本程序

龙城农夫8

龙城农夫8

2016-02-19 16:26

下面是个用Java编写的记事本程序教程,撑握了其技术要点,学起来就简单多了。赶紧跟着图老师小编一起来看看吧!

  这个学期,我们学习了Java编程,期末之时老师要我们编个记事本作为这门课程的课程设计,我写了一个,大体上的功能都实现了,只有"撤销"的功能没有实现,请各位大虾指点一下,撤销的算法,不甚感激!

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

  特将记事本的源码附下,请大家指点,看还有没有更简洁高效的算法,请不要吝啬,我的E-mail:yangyong@ccsu.cn,欢迎大家来信指点!

  

/*
*
*题目:记事本程序
*Author: Jeason
*
* 2004-12-20
*
**/
package jeason;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.io.*;
import java.util.*;
import java.text.*;
public class Jsb{
///
boolean dirty=true;
String filename="";
String strtext="";
///////////////////////////////////
////////// Menu ////////////////
///////////////////////
JFrame frame=new JFrame("我的记事本");
JPopupMenu pop=new JPopupMenu("弹出");
JTextArea text=new JTextArea();
JLabel statubar=new JLabel("状态栏");
JMenuBar Mbar=new JMenuBar();
JFileChooser jFileChooser1=new JFileChooser();
JColorChooser jColor=new JColorChooser();
JMenu jFile=new JMenu("文件");
JMenu jEdit=new JMenu("编辑");
JMenu jFormat=new JMenu("格式");
JMenu jHelp=new JMenu("帮助");
JMenuItem jnew=new JMenuItem("新建(N)");
public Jsb(){ ///无参数的构造函数
///
this.dirty=false;
/////
final BorderLayout borderLayout1=new BorderLayout();
frame.setSize(600,500);//
frame.addWindowListener(new Jsb_frame_closingAdapter(this));
JPanel panel=new JPanel();
panel.setLayout(borderLayout1);//布局
panel.add(new JScrollPane(text));//滚动条
panel.add(statubar,borderLayout1.SOUTH);
frame.getContentPane().add(panel);
//
frame.setJMenuBar(Mbar); //将主菜单添加到窗体中
/*
* jnew
**/
//jnew
jnew.addActionListener(new File_new_actionAdapter(this));
jnew.setMnemonic(´N´);//N上下划线
jnew.setAccelerator(KeyStroke.getKeyStroke(´N´,java.awt.Event.CTRL_MASK,true));
//快捷方式
/*
* jopen
**/
JMenuItem jopen=new JMenuItem("打开(O)");//jopen
jopen.addActionListener(new File_open_actionAdapter(this));
jopen.setMnemonic(´O´);
jopen.setAccelerator(KeyStroke.getKeyStroke(´O´,java.awt.Event.CTRL_MASK,true));
/*
* jsave
**/
JMenuItem jsave=new JMenuItem("保存(S)");
jsave.addActionListener(new File_save_actionAdapter(this));
jsave.setMnemonic(´S´);
jsave.setAccelerator(KeyStroke.getKeyStroke(´S´,java.awt.Event.CTRL_MASK,true));
/*
* jsave as
**/
JMenuItem jsaveas=new JMenuItem("另存为...");
jsaveas.addActionListener(new File_saveas_actionAdapter(this));
/*
* jquite
**/
JMenuItem jquite=new JMenuItem("关闭(Q)");
jquite.addActionListener(new File_quite_actionAdapter(this));
jquite.setMnemonic(´Q´);
jquite.setAccelerator(KeyStroke.getKeyStroke(´Q´,java.awt.Event.CTRL_MASK,true));
//------------------------------------
// jFile code of end
//--------------------------------------
/**
* jEdit code
*/
//jundo
JMenuItem jundo=new JMenuItem("撤销(U)");
jundo.addActionListener(new Edit_undo_actionAdapter(this));
jundo.setMnemonic(´U´);
jundo.setAccelerator(KeyStroke.getKeyStroke(´U´,java.awt.Event.CTRL_MASK,true));
/*
* jcut
**/
JMenuItem jcut=new JMenuItem("剪切(X)");
jcut.addActionListener(new Edit_cut_actionAdapter(this));
jcut.setMnemonic(´X´);
jcut.setAccelerator(KeyStroke.getKeyStroke(´X´,java.awt.Event.CTRL_MASK,true));
/*
* jcopy
**/
JMenuItem jcopy=new JMenuItem("复制(C)");
jcopy.addActionListener(new Edit_copy_actionAdapter(this));
jcopy.setMnemonic(´C´);
jcopy.setAccelerator(KeyStroke.getKeyStroke(´C´,java.awt.Event.CTRL_MASK,true));
/*
* jpaste
**/
JMenuItem jpaste=new JMenuItem("粘贴(V)");
jpaste.addActionListener(new Edit_paste_actionAdapter(this));
jpaste.setMnemonic(´V´);
jpaste.setAccelerator(KeyStroke.getKeyStroke(´V´,java.awt.Event.CTRL_MASK,true));
/*
* jdelete
**/
JMenuItem jdelete=new JMenuItem("删除(D)");
jdelete.addActionListener(new Edit_delete_actionAdapter(this));
jdelete.setMnemonic(´D´);
jdelete.setAccelerator(KeyStroke.getKeyStroke(´D´,java.awt.Event.CTRL_MASK,true));
/*
* jfind
**/
JMenuItem jfind=new JMenuItem("查找(F)");
jfind.addActionListener(new Edit_find_actionAdapter(this));
jfind.setMnemonic(´F´);
jfind.setAccelerator(KeyStroke.getKeyStroke(´F´,java.awt.Event.CTRL_MASK,true));
/*
* jreplace
**/
JMenuItem jreplace=new JMenuItem("替换(R)");
jreplace.addActionListener(new Edit_replace_actionAdapter(this));
jreplace.setMnemonic(´R´);
jreplace.setAccelerator(KeyStroke.getKeyStroke(´R´,java.awt.Event.CTRL_MASK,true));
/*
*jselectall
**/
JMenuItem jselectall=new JMenuItem("全选(A)");
jselectall.addActionListener(new Edit_selectall_actionAdapter(this));
jselectall.setMnemonic(´A´);
jselectall.setAccelerator(KeyStroke.getKeyStroke(´A´,java.awt.Event.CTRL_MASK,true));
/*
* jdate
**/
JMenuItem jdate=new JMenuItem("日期/时间(T)");
jdate.addActionListener(new Edit_timedate_actionAdapter(this));
jdate.setMnemonic(´T´);
jdate.setAccelerator(KeyStroke.getKeyStroke(´T´,java.awt.Event.CTRL_MASK,true));
//------------------------------
// jEdit code of end
//
//-----------------------------
/*
* jword
**/
JMenuItem jword=new JMenuItem("自动换行");
jword.addActionListener(new Format_word_actionAdapter(this));
/*
* jfont
**/
JMenuItem jfont=new JMenuItem("字体..");
jfont.addActionListener(new Format_font_actionAdapter(this));
/*
* jcolor
**/
JMenuItem jcolor=new JMenuItem("颜色...");
jcolor.addActionListener(new Format_color_actionAdapter(this));
//--------------------------------------------------
// jFormat code of end
//--------------------------------------------------
/*
* jabout
**/
JMenuItem jabout=new JMenuItem("关于作者(A)");
jabout.addActionListener(new Help_about_actionAdapter(this));
jabout.setMnemonic(´A´);
jabout.setAccelerator(KeyStroke.getKeyStroke(´A´,java.awt.Event.CTRL_MASK,true));
//-------------------------------------------------
// jHelp code of end
//------------------------------------------------------
/*************************************************
*------------------------------------------------
* PopupMenuItem
*------------------------------------------------
*************************************************/
/*
* pundo
**/
JMenuItem pundo=new JMenuItem("撤销(U)");
pundo.addActionListener(new Pop_undo_actionAdapter(this));
pundo.setMnemonic(´U´);
pundo.setAccelerator(KeyStroke.getKeyStroke(´U´,java.awt.Event.CTRL_MASK,true));
/*
* pcut
**/
JMenuItem pcut=new JMenuItem("剪切(X)");
pcut.addActionListener(new Pop_cut_actionAdapter(this));
pcut.setMnemonic(´X´);
pcut.setAccelerator(KeyStroke.getKeyStroke(´X´,java.awt.Event.CTRL_MASK,true));
/*
* pcopy
**/
JMenuItem pcopy=new JMenuItem("复制(C)");
pcopy.addActionListener(new Pop_copy_actionAdapter(this));
pcopy.setMnemonic(´C´);
pcopy.setAccelerator(KeyStroke.getKeyStroke(´C´,java.awt.Event.CTRL_MASK,true));
/*
* ppaste
**/
JMenuItem ppaste=new JMenuItem("粘贴(V)");
ppaste.addActionListener(new Pop_paste_actionAdapter(this));
ppaste.setMnemonic(´V´);
ppaste.setAccelerator(KeyStroke.getKeyStroke(´V´,java.awt.Event.CTRL_MASK,true));
/*
*pdelete
**/
JMenuItem pdelete=new JMenuItem("删除(D)");
pdelete.addActionListener(new Pop_delete_actionAdapter(this));
pdelete.setMnemonic(´D´);
pdelete.setAccelerator(KeyStroke.getKeyStroke(´D´,java.awt.Event.CTRL_MASK,true));
////////
///////////// text////////////////////////////////////////
text.setDoubleBuffered(false);
text.setToolTipText("杨勇的记事本");
text.setVerifyInputWhenFocusTarget(true);
text.setText("");
text.addCaretListener(new Jsb_text_caretAdapter(this));
text.addMouseListener(new Jsb_text_mouseAdapter(this));
text.addAncestorListener(new Jsb_text_ancestorAdapter(this));
//////////////////////////////////////////////////////////
Mbar.add(jFile);
Mbar.add(jEdit);
Mbar.add(jFormat);
Mbar.add(jHelp);
jFile.add(jnew);
jFile.add(jopen);
jFile.addSeparator();
jFile.add(jsave);
jFile.add(jsaveas);
jFile.addSeparator();
jFile.add(jquite);
jEdit.add(jundo);
jEdit.addSeparator();
jEdit.add(jcut);
jEdit.add(jcopy);
jEdit.add(jpaste);
jEdit.add(jdelete);
jEdit.addSeparator();
jEdit.add(jfind);
jEdit.add(jreplace);
jEdit.addSeparator();
jEdit.add(jselectall);
jEdit.add(jdate);
jFormat.add(jword);
jFormat.addSeparator();
jFormat.add(jfont);
jFormat.addSeparator();
jFormat.add(jcolor);
jHelp.add(jabout);
pop.add(pundo);
pop.addSeparator();
pop.add(pcut);
pop.add(pcopy);
pop.add(ppaste);
pop.add(pdelete);
frame.setVisible(true);
}
/************************************************************
//////////////////////Event/////////////////////////////////
**************************************************************/
public void frame_windowclose_windowClosing(WindowListener e){
this.close();
}
/////////////////////////////////////////////////////////
public void text_mouseClicked(MouseEvent e){
if(e.getModifiers()==InputEvent.BUTTON3_MASK){
pop.show((Component)e.getSource(),e.getX(),e.getY());
}
}
public void text_ancestorAdded(AncestorEvent e){
this.dirty=false;
this.newtext();
}
public void text_caretUpdate(CaretEvent e)
{
this.dirty=true;
//this.statubar.setText(this.text.getText());
}
///////////// File /////////////////////////////////////
public void File_open_actionPerformed(ActionEvent e){
//打开的事件
this.opentext();
}
public void File_new_actionPerformed(ActionEvent e){
///新建的事件
this.newtext();
}
public void File_save_actionPerformed(ActionEvent e){
//保存的事件
this.save();
}
public void File_saveas_actionPerformed(ActionEvent e){
//另存为
this.saveas();
}
public void File_quite_actionPerformed(ActionEvent e){
this.close();
}
////////////////// Edit /////////////////////////////////////
public void Edit_undo_actionPerformed(ActionEvent e){
//撤销
this.undo();
}
public void Edit_cut_actionPerformed(ActionEvent e){
//剪切
this.cut();
}
public void Edit_copy_actionPerformed(ActionEvent e){
//复制
this.copy();
}
public void Edit_paste_actionPerformed(ActionEvent e){
//粘贴
this.paste();
}
public void Edit_delete_actionPerformed(ActionEvent e){
//删除
this.delete();
}
public void Edit_find_actionPerformed(ActionEvent e){
//查找
int cu=this.text.getCaretPosition();
int end=this.text.getText().length();
FindDlg fd=new FindDlg(frame,"查找",true);
fd.show();
String str=fd.getFindStr().trim();
if(fd.getFlag()){
this.nextFindStr(str,cu,end);
}else{
this.upFindStr(str,cu);
}
}
public void Edit_replace_actionPerformed(ActionEvent e){
//替换
int cu=this.text.getCaretPosition();
int end=this.text.getText().length();
ReplaceDlg rd=new ReplaceDlg(frame,"替换",true);
rd.show();
this.replaceStr(rd.findStr().trim(),rd.replaceStr().trim(),cu,end);
}
public void Edit_selectall_actionPerformed(ActionEvent e){
//全选
this.text.setSelectionStart(0);
this.text.setSelectionEnd(this.text.getText().length());
}
public void Edit_timedate_actionPerformed(ActionEvent e){
//时间日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
this.text.append("rn当前时间:"+sdf.format(new Date()));
}
///////////// Format//////////////////////////////////////
public void Format_word_actionPerformed(ActionEvent e){
//自动换行
if(!this.text.getLineWrap()){
this.text.setLineWrap(true);
}
else{
this.text.setLineWrap(false);
}
}
public void Format_font_actionPerformed(ActionEvent e){
//字体"常规","斜体","粗体","粗斜体"
Font cur=this.text.getFont();
int type=Font.BOLD;
FontSet fs=new FontSet(frame,"字体设置",true);
fs.show();
if(fs.flag){
switch(fs.font2()){
case 0:type=Font.PLAIN;break;
case 1:type=Font.ITALIC;break;
case 2:type=Font.BOLD; break;
case 3:type=Font.ROMAN_BASELINE;break;
default:type=Font.PLAIN;break;
}
Font f=new Font(fs.font1(),type,16);
this.text.setFont(f);
}else{
this.text.setFont(cur);
}
}
public void Format_color_actionPerformed(ActionEvent e){
// 颜色
Color current=this.text.getForeground();
this.jColor.setColor(current);
this.text.setForeground(
this.jColor.showDialog(text,"选择颜色",current));
}
//////////////////// Help /////////////////////////////////////
public void Help_about_actionPerformed(ActionEvent e){
//关于作者
new AboutDlg();
}
////////////////////////////////////////////////////////
public void pop_undo_actionPerformed(ActionEvent e){
//Pop undo
this.undo();
}
public void pop_cut_actionPerformed(ActionEvent e){
//pop cut
this.cut();
}
public void pop_copy_acionPerformed(ActionEvent e){
//pop copy
this.copy();
}
public void pop_paste_actionPerformed(ActionEvent e){
//pop paste
this.paste();
}
public void pop_delete_actionPerformed(ActionEvent e){
//pop delete
this.delete();
}
/************************************************************
/////////////////////////////////////////////////////////////
////////////// coustm function ///////////////////////////////
/////////////////////////////////////////////////////////////
************************************************************/
void close(){
if(this.dirty){
Dlgtext Dt=new Dlgtext(frame,"提示",true);
Dt.show();
if(Dt.getCheck()){
this.save();
}
else {
frame.dispose();
System.exit(0);
}
}else{
frame.dispose();
System.exit(0);
}
}
void newtext(){//新建
if((!this.dirty)||(!this.saveas())){
this.text.setText("");
this.text.setFocusable(true);
this.frame.setTitle("未命名-----Author:Jeason");
this.statubar.setText("新建文本");
}
else this.saveas();
}
void opentext(){//打开
//
String strFileOpen="";
if(!this.dirty){
try{
if(this.jFileChooser1.APPROVE_OPTION==
this.jFileChooser1.showOpenDialog(frame)){
strFileOpen=this.jFileChooser1.getSelectedFile().getPath();
File file=new File(strFileOpen);
int flength=(int)file.length();
int num=0;
FileReader fReader=new FileReader(file);
char[] data=new char[flength];
while(fReader.ready()){
num+=fReader.read(data,num,flength-num);
}
fReader.close();
this.text.setText(new String(data,0,num));
this.filename=strFileOpen;
this.frame.setTitle(this.filename);
this.statubar.setText("Open File:"+this.filename);
this.dirty=false;
}else
{
return ;
}
}catch(Exception e){
this.statubar.setText("Error Open:"+e.getMessage());
}
}else{
this.save();
}
}
boolean save(){//保存
if(this.dirty){
if(this.filename.length()!=0){
try{
File saveFile=new File(this.filename);
FileWriter fw=new FileWriter(saveFile);
fw.write(this.text.getText());
fw.close();
this.dirty=false;
this.statubar.setText("保存文件:"+this.filename);
return true;
}catch(Exception e)
{
this.statubar.setText("保存出错: "+e.getMessage());
return false;
}
}else{
return this.saveas();
}
}else{
return true;
}
}
boolean saveas(){//另存为
if(this.jFileChooser1.APPROVE_OPTION==this.jFileChooser1.showSaveDialog(frame)){
this.filename=this.jFileChooser1.getSelectedFile().getPath();
return this.save();
}else{
return false;
}
}
void undo(){
//undo
}
void cut(){
//cut
try{
String str=this.text.getSelectedText();
if(str.length()!=0){
this.strtext=str;
this.text.replaceRange("",this.text.getSelectionStart(),this.text.getSelectionEnd());
this.dirty=true;
}
}catch(Exception ex){
this.statubar.setText("剪切出错:"+ex.getMessage());
}
}
void copy(){
//copy
try{
String str=this.text.getSelectedText();
if(str.length()!=0){
this.strtext=str;
}
}catch(Exception ex)
{
this.statubar.setText("复制出错!"+ex.getMessage());
}
}
void paste(){
//paste
if(this.strtext.length()0){
this.text.insert(this.strtext,this.text.getCaretPosition());
this.dirty=true;
}
}
void delete(){
//delete
this.text.replaceRange("",this.text.getSelectionStart(),this.text.getSelectionEnd());
this.dirty=true;
}
void nextFindStr(String str,int cur,int end){
if(curend){
this.statubar.setText("没有找到!");
}
else{
int i=this.text.getText().indexOf(str);
if(i=0){
this.text.setSelectionStart(i);
this.text.setSelectionEnd(i+str.length());
this.statubar.setText("已经在:"+i+" 位置找到!");
}
else{
nextFindStr(str,++cur,end);
}
}
}
void upFindStr(String str,int cur){
if(cur0){
this.statubar.setText("没有找到!");
}else{
int i=this.text.getText().lastIndexOf(str);
if(i=0){
this.text.setSelectionStart(i);
this.text.setSelectionEnd(i+str.length());
this.statubar.setText("已经在:"+i+" 位置找到!");
}else{
upFindStr(str,--cur);
}
}
}
void replaceStr(String findStr,String replaceStr,int cur,int end){
if(curend){
this.statubar.setText("没有找到!");
}else{
int i=this.text.getText().indexOf(findStr);
if(i0){
this.text.setSelectionStart(i);
this.text.setSelectionEnd(i+findStr.length());
this.text.replaceRange(replaceStr,this.text.getSelectionStart(),this.text.getSelectionEnd());
}else{
replaceStr(findStr,replaceStr,++cur,end);
}
}
}
/*------------------------------------------------
*
* main
*
*-----------------------------------------------
*/
public static void main(String[] args){
Jsb jsb1=new Jsb();
}
}
/************************************************************
///////////////////////// Event class ///////////////////////
**************************************************************/
class Jsb_frame_closingAdapter extends java.awt.event.WindowAdapter{
Jsb adaptee;
Jsb_frame_closingAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void windowClosing(WindowListener e){
adaptee.frame_windowclose_windowClosing(e);
}
}
///////////////////////////////////////////////////////////
class Jsb_text_mouseAdapter extends java.awt.event.MouseAdapter{
Jsb adaptee;
Jsb_text_mouseAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void mouseClicked(MouseEvent e){
adaptee.text_mouseClicked(e);
}
}
class Jsb_text_ancestorAdapter implements javax.swing.event.AncestorListener{
Jsb adaptee;
Jsb_text_ancestorAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void ancestorAdded(AncestorEvent e){
adaptee.text_ancestorAdded(e);
}
public void ancestorRemoved(AncestorEvent e){
}
public void ancestorMoved(AncestorEvent e){
}
}
class Jsb_text_caretAdapter implements javax.swing.event.CaretListener{
Jsb adaptee;
Jsb_text_caretAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void caretUpdate(CaretEvent e){
adaptee.text_caretUpdate(e);
}
}
///////////////////////////////////////////////////////////
class File_open_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
File_open_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.File_open_actionPerformed(e);
}
}
class File_new_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
File_new_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.File_new_actionPerformed(e);
}
}
class File_save_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
File_save_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.File_save_actionPerformed(e);
}
}
class File_saveas_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
File_saveas_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.File_saveas_actionPerformed(e);
}
}
class File_quite_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
File_quite_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.File_quite_actionPerformed(e);
}
}
//////////////////////////////////////////////////////////////
class Edit_undo_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Edit_undo_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Edit_undo_actionPerformed(e);
}
}
class Edit_cut_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Edit_cut_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Edit_cut_actionPerformed(e);
}
}
class Edit_copy_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Edit_copy_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Edit_copy_actionPerformed(e);
}
}
class Edit_paste_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Edit_paste_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Edit_paste_actionPerformed(e);
}
}
class Edit_delete_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Edit_delete_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Edit_delete_actionPerformed(e);
}
}
class Edit_find_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Edit_find_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Edit_find_actionPerformed(e);
}
}
class Edit_replace_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Edit_replace_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Edit_replace_actionPerformed(e);
}
}
class Edit_selectall_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Edit_selectall_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Edit_selectall_actionPerformed(e);
}
}
class Edit_timedate_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Edit_timedate_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Edit_timedate_actionPerformed(e);
}
}
/////////////////////////////////////////////////////////////
class Format_word_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Format_word_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Format_word_actionPerformed(e);
}
}
class Format_font_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Format_font_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Format_font_actionPerformed(e);
}
}
class Format_color_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Format_color_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Format_color_actionPerformed(e);
}
}
///////////////////////////////////////////////////////////////
class Help_about_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Help_about_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.Help_about_actionPerformed(e);
}
}
///////////////////////////////////////////////////////////
class Pop_undo_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Pop_undo_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.pop_undo_actionPerformed(e);
}
}
class Pop_cut_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Pop_cut_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.pop_cut_actionPerformed(e);
}
}
class Pop_copy_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Pop_copy_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.pop_copy_acionPerformed(e);
}
}
class Pop_paste_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Pop_paste_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.pop_paste_actionPerformed(e);
}
}
class Pop_delete_actionAdapter implements java.awt.event.ActionListener{
Jsb adaptee;
Pop_delete_actionAdapter(Jsb adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.pop_delete_actionPerformed(e);
}
}
/******************* Event class end **********************************/
/*************************************************************
* title: DlgText.java
* author: jeason
* date: 2004-12-21
**************************************************************/
package jeason;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Dlgtext extends JDialog{
private boolean check=false;
JLabel text=new JLabel( );
JButton btnOk=new JButton( );
JButton btnNo=new JButton( );
FlowLayout flowLayout1=new FlowLayout();
Dlgtext(){
this(null,"",false);
}
Dlgtext(Frame frame, String title, boolean modal){
super(frame,title,modal);
text.setText(" 你要保存吗? ");
text.setSize(200,60);
this.setSize(200,80);
this.setModal(true);
btnOk.setText("确定(Y)");
btnOk.setMnemonic(´Y´);
btnOk.setSize(100,20);
btnOk.addActionListener(new btnOk_actionAdapter(this));
btnNo.setText("取消(N)");
btnNo.setMnemonic(´N´);
btnNo.setSize(100,20);
btnNo.addActionListener(new btnNo_actionAdapter(this));
this.getContentPane().setLayout(flowLayout1);
this.getContentPane().add(text,flowLayout1);
this.getContentPane().add(btnOk,flowLayout1);
this.getContentPane().add(btnNo,flowLayout1);
}
void btnOk_actionPerformed(ActionEvent e){
this.check=true;
this.dispose();
this.hide();
}
void btnNo_actionPerformed(ActionEvent e){
this.check=false;
this.dispose();
this.hide();
}
public boolean getCheck(){
return this.check;
}
}
class btnOk_actionAdapter implements java.awt.event.ActionListener{
Dlgtext adaptee;
btnOk_actionAdapter(Dlgtext adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.btnOk_actionPerformed(e);
}
}
class btnNo_actionAdapter implements java.awt.event.ActionListener{
Dlgtext adaptee;
btnNo_actionAdapter(Dlgtext adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.btnNo_actionPerformed(e);
}
}
/******************************************************
*-----------------------------------------------------
* FindDlg.java
* jeason
* 04-12-23 2:19
*-----------------------------------------------------
*****************************************************/
package jeason;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FindDlg extends JDialog{
private String findstr;
private boolean flag=true;
JLabel findText=new JLabel("查找内容");
JTextField strText=new JTextField(" ");
JButton btnNext=new JButton( );
JButton btnUp=new JButton( );
FlowLayout flowLayout1=new FlowLayout();
FindDlg(Frame frame,String title, boolean modal){
super(frame,title,modal);
this.setTitle("查找");
this.setSize(200,90);
this.setModal(true);
findText.setText(" 查找内容 ");
findText.setSize(70,60);
strText.setText(" ");
strText.setSize(130,60);
btnNext.setText("向下查找");
btnNext.setSize(100,40);
btnNext.addActionListener(new btnNext_actionAdapter(this));
btnUp.setText("向上查找");
btnUp.setSize(100,40);
btnUp.addActionListener(new btnUp_actionAdapter(this));
this.getContentPane().setLayout(flowLayout1);
this.getContentPane().add(this.findText,flowLayout1);
this.getContentPane().add(this.strText,flowLayout1);
this.getContentPane().add(this.btnNext,flowLayout1);
this.getContentPane().add(this.btnUp,flowLayout1);
}
FindDlg(){
this(null,"",false);
}
public void btnNext_actionPerformed(ActionEvent e){
this.findstr=this.strText.getText();
this.flag=true;
this.dispose();
}
public void btnUp_actionPerformed(ActionEvent e){
this.findstr=this.strText.getText();
this.flag=false;
this.dispose();
}
public String getFindStr(){
return this.findstr;
}
public boolean getFlag(){
return this.flag;
}
}
class btnNext_actionAdapter implements java.awt.event.ActionListener{
FindDlg adaptee;
btnNext_actionAdapter(FindDlg adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.btnNext_actionPerformed(e);
}
}
class btnUp_actionAdapter implements java.awt.event.ActionListener{
FindDlg adaptee;
btnUp_actionAdapter(FindDlg adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.btnUp_actionPerformed(e);
}
}
/******************************************************
*-----------------------------------------------------
* FontSet.java
* jeason
* 04-12-23 2:19
*-----------------------------------------------------
*****************************************************/
package jeason;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FontSet extends JDialog{
//JPanel panel1 = new JPanel();
private String font1="";
JLabel txtStr=new JLabel("请选择字体");
JLabel txt2=new JLabel("请选择字型");
List list1 = new List(3,false);
List list2 = new List(3,false);
JButton btnOk=new JButton("确定");
JButton btnNo=new JButton("撤销");
FlowLayout flowLayout1=new FlowLayout();
boolean flag=true;
int type;
FontSet(Frame frame,String title,boolean modal){
this.setTitle("字体设置");
this.setSize(200,230);
this.setModal(true);
txtStr.setSize(100,60);
list1.setSize(100,60);
list1.setMultipleMode(false);
this.txt2.setSize(100,60);
list2.setSize(100,60);
btnOk.setMnemonic(´Y´);
btnOk.setSize(100,20);
btnOk.addActionListener(new btnOk_actionAdapter(this));
//btnNo.setText("取消(N)");
btnNo.setMnemonic(´N´);
btnNo.setSize(100,20);
btnNo.addActionListener(new btnNo_actionAdapter(this));
///////////// Font //////////////////////////////////
GraphicsEnvironment gl=GraphicsEnvironment.getLocalGraphicsEnvironment();
String fontName[]=gl.getAvailableFontFamilyNames();
// int fontX[]={Font.BOLD,Font.ITALIC,Font.PLAIN};
for(int i=0;ifontName.length;i++){
list1.add(fontName[i]);
}
String fontx[]={"常规","斜体","粗体","粗斜体"};
for(int i=0;ifontx.length;i++){
list2.add(fontx[i]);
}
list1.select(0);
list2.select(0);
///////////////////////////////////////////////
this.getContentPane().setLayout(flowLayout1);
this.getContentPane().add(txtStr,flowLayout1);
this.getContentPane().add(list1,flowLayout1);
this.getContentPane().add(this.txt2,flowLayout1);
this.getContentPane().add(this.list2,flowLayout1);
this.getContentPane().add(btnOk,flowLayout1);
this.getContentPane().add(btnNo,flowLayout1);
}
FontSet(){
this(null,"",false);
}
void btnOk_actionPerformed(ActionEvent e){
this.flag=true;
this.font1=this.list1.getSelectedItem();
this.type=this.list2.getSelectedIndex();
this.dispose();
}
void btnNo_actionPerformed(ActionEvent e){
this.flag=false;
this.dispose();
}
public String font1(){
return this.font1;
}
public int font2(){
return this.type;
}
}
class btnOk_actionAdapter implements java.awt.event.ActionListener{
FontSet adaptee;
btnOk_actionAdapter(FontSet adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.btnOk_actionPerformed(e);
}
}
class btnNo_actionAdapter implements java.awt.event.ActionListener{
FontSet adaptee;
btnNo_actionAdapter(FontSet adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.btnNo_actionPerformed(e);
}
}
/**************************************************************
*-------------------------------------------------------------
* ReplaceDlg.java
* jeason
* 04-12-23
*-------------------------------------------------------------
**************************************************************/
package jeason;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class ReplaceDlg extends JDialog{
private String findStr="",replaceStr="";
///////////////////////////////////////
JLabel txt1=new JLabel("查找:");
JLabel txt2=new JLabel("替换为:");
JTextField txtFind=new JTextField(" ");
JTextField txtReplace=new JTextField(" ");
JButton btn=new JButton("替换");
FlowLayout flowLayout1=new FlowLayout();
ReplaceDlg(Frame frame,String title,boolean modal){
super(frame,title,modal);
this.setTitle("替换为");
this.setSize(200,90);
this.setModal(true);
txt1.setSize(40,60);
txt2.setSize(40,60);
txtFind.setSize(50,60);
txtReplace.setSize(50,60);
btn.setSize(200,20);
btn.addActionListener(new btn_actionAdapter(this));
this.getContentPane().setLayout(flowLayout1);
this.getContentPane().add(txt1,flowLayout1);
this.getContentPane().add(this.txtFind,flowLayout1);
this.getContentPane().add(this.txt2,flowLayout1);
this.getContentPane().add(this.txtReplace,flowLayout1);
this.getContentPane().add(this.btn,flowLayout1);
}
ReplaceDlg(){
this(null,"",false);
}
public void btn_actionPerformed(ActionEvent e){
this.findStr=this.txtFind.getText();
this.replaceStr=this.txtReplace.getText();
this.dispose();
}
public String findStr(){
return this.findStr;
}
public String replaceStr(){
return this.replaceStr;
}
}
class btn_actionAdapter implements java.awt.event.ActionListener{
ReplaceDlg adaptee;
btn_actionAdapter(ReplaceDlg adaptee){
this.adaptee=adaptee;
}
public void actionPerformed(ActionEvent e){
adaptee.btn_actionPerformed(e);
}
}
/*********************************************
*------------------------------------------
* AboutDlg.java
* jeason
*----------------------------------------------
*********************************************/
package jeason;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class AboutDlg extends JFrame{
JLabel text=new JLabel("");
JLabel bar=new JLabel("");
final BorderLayout borderLayout1=new BorderLayout();
AboutDlg(){
super();
this.setSize(300,150);
this.setTitle("~关于作者~");
text.setText("本记事本作者:杨勇rnrn"+"E-mail:yangyong@ccsu.cnrn");
bar.setText("本软件由JCreator 2.5开发");
JPanel jPanel=new JPanel();
jPanel.setLayout(borderLayout1);
jPanel.add(text,borderLayout1.CENTER);
jPanel.add(bar,borderLayout1.SOUTH);
this.getContentPane().add(jPanel);
this.setVisible(true);
}
}

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

用Java编写的记事本程序

编程语言 网络编程
用Java编写的记事本程序

用Java编写的记事本程序(1)

编程语言 网络编程
用Java编写的记事本程序(1)

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

用Java编写的记事本程序(2)

编程语言 网络编程
用Java编写的记事本程序(2)

记事编写大比拼 年终记事本软件合集

手机软件 应用软件
记事编写大比拼 年终记事本软件合集

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

可以替代系统记事本的程序

C语言教程 C语言函数
可以替代系统记事本的程序

用authorwre做记事本

设计软件 平面设计软件 广告设计软件
用authorwre做记事本

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Java抽取WordPDF的四种武器

Java抽取WordPDF的四种武器

Win7轻松变身为Wi-Fi基站 只需简单一步

Win7轻松变身为Wi-Fi基站 只需简单一步
下拉加载更多内容 ↓