package work;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import javax.swing.event.*;
import java.util.*;
import java.awt.datatransfer.*;
class text implements Serializable{
String keyword;//密码
String textmain;//文本部分
}
public class SlNotepad extends JFrame implements ActionListener,ListSelectionListener{
MenuBar menusBar;//菜单栏
MenuItem open,keep,save,newfile,exit_out,about,text_font,colorchoose,backchoose,timeadd,keyopen,keysave,zcancel,copy,paste,cut,delete,selectall,search,autoline;
Menu file,edit,format,help;//菜单种类
MenuShortcut opencut,dsavecut,savecut,newworkcut,quitcut,aboutcut,fontchoosecut,colorchoosecut,backchoosecut,timeaddcut,keyopencut,keysavecut,zcancelcut,copycut,pastecut,cutcut,deletecut,selectallcut,searchcut,autolinecut;
Toolkit tool=this.getToolkit();
Clipboard clip;//剪贴版
Image image=tool.getImage("data/icon.jpg");//框架图标
JTextArea textarea;//文本区域
JDialog dialog,fontdialog,keydialog,searchdialog;//问是否
JList fontlist;//字体单
Choice fontpara;//字体粗斜
JTextField fontsizetext;//字体大小输入
JTextField searchtext;//搜索文字
JTextField changetext;//替换文字
TextField keyentertext;//密码输入
JScrollPane listscroll,textscroll;
JPanel fontbuttonpanel,fontmainpanel,fontsizepanel,searchpanel,searchbuttonpanel,searchtextpanel,changepanel,changetextpanel,changebuttonpanel;
GraphicsEnvironment ge=GraphicsEnvironment.getLocalGraphicsEnvironment();
String fontname[]=ge.getAvailableFontFamilyNames();//字体库
boolean havesave=true;//是否已存
boolean enterquit=false;//用来判定对话框之前是否按退出
JButton yes,no,cancel,ok,can,keyok,searchok,searchcancel,changeok,changeall;//对话框按钮
JLabel tip,fonttype,fontsize,searchtip,changetip;//提示
FileDialog filedialog;//输入输出对话框
text text;//存储对象
String opensource="";//用来判断是否已保存
String texttype="宋体";//字体
String direct="";//保存路径
String canceltext="";//用来撤销
int size=18;//字体大小
int para=0;//字体粗斜
Font font=new Font(texttype,Font.PLAIN,size);
Color fontcolor=Color.black;//字体颜色
Color backcolor=Color.white;//背景颜色
Date nowtime;//现在时间
char savemode1='s';
char savemode2='t';//加密保存方式
public SlNotepad(String title){
this.setIconImage(image);//图标
setTitle(title);//标题
this.setResizable(true);//大小可调
this.setBackground(Color.cyan);
this.setBounds(new Rectangle(150,100,800,550));//窗口大小
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.out.println("程序关闭");
System.exit(0);
}
public void windowOpened(WindowEvent e){
System.out.println("程序打开");
}
});//程序关闭监听
clip=getToolkit().getSystemClipboard();//获得剪贴版
this.initcopy();//初始化为空
textarea=new JTextArea();
textarea.setLineWrap(false);
textarea.setFont(font);
textarea.setForeground(Color.black);
textarea.setBackground(Color.white);
textscroll=new JScrollPane(textarea);
this.add(textscroll);
//文本域
//------------------------------------------------
searchdialog=new JDialog(this,"搜索/替換",false);
searchdialog.setResizable(false);
searchdialog.setLayout(new BorderLayout());
searchdialog.setSize(250,230);
searchok=new JButton("查找下一个");
searchcancel=new JButton("取消搜索");
searchtext=new JTextField("",10);
searchtip=new JLabel("搜索关键字:");
searchpanel=new JPanel();
searchpanel.setBorder(BorderFactory.createTitledBorder("搜索"));//加边框
searchpanel.setLayout(new BoxLayout(searchpanel, BoxLayout.Y_AXIS));//上下的
searchbuttonpanel=new JPanel();
searchbuttonpanel.setLayout(new FlowLayout());
searchtextpanel=new JPanel();
searchtextpanel.setLayout(new FlowLayout());
searchtextpanel.add(searchtip);
searchtextpanel.add(searchtext);
searchbuttonpanel.add(searchok);
searchbuttonpanel.add(searchcancel);
searchpanel.add(searchtextpanel);
searchpanel.add(searchbuttonpanel);
searchdialog.add(searchpanel,BorderLayout.NORTH);
searchok.addActionListener(this);
searchcancel.addActionListener(this); //搜索对话框(搜索)
changetext=new JTextField("",10);
changetip=new JLabel("替换为: ");
changeok=new JButton("替换");
changeall=new JButton("全部替换");
changepanel=new JPanel();
changepanel.setBorder(BorderFactory.createTitledBorder("替换"));//加边框
changepanel.setLayout(new BoxLayout(changepanel, BoxLayout.Y_AXIS));//上下的
changebuttonpanel=new JPanel();
changebuttonpanel.setLayout(new FlowLayout());
changetextpanel=new JPanel();
changetextpanel.setLayout(new FlowLayout());
changetextpanel.add(changetip);
changetextpanel.add(changetext);
changebuttonpanel.add(changeok);
changebuttonpanel.add(changeall);
changepanel.add(changetextpanel);
changepanel.add(changebuttonpanel);
searchdialog.add(changepanel,BorderLayout.CENTER);
changeok.addActionListener(this);
changeall.addActionListener(this); //搜索对话框(替换)
keyentertext=new TextField("",8);
keyentertext.setEchoChar('*');
keyok=new JButton("输入完成");
keydialog=new JDialog(this,"密码设置",true);
keydialog.setResizable(false);
keydialog.setLayout(new FlowLayout());
keydialog.setSize(250,80);
keydialog.add(keyentertext);
keydialog.add(keyok);
keyok.addActionListener(this); //密码对话框
yes=new JButton("是");
no=new JButton("否");
cancel=new JButton("取消");
tip=new JLabel("文件的文字已经改动,要保存文件吗?");
dialog=new JDialog(this,"写字板",true);
dialog.setResizable(false);
dialog.setLayout(new FlowLayout());
dialog.setSize(250,100);
dialog.add(tip);
dialog.add(yes);
dialog.add(no);
dialog.add(cancel);
yes.addActionListener(this);
no.addActionListener(this);
cancel.addActionListener(this); //保存提示对话框
ok=new JButton("确定");
can=new JButton("取消");
fontpara=new Choice();
fontpara.add("一般");
fontpara.add("粗体");
fontpara.add("斜体");
fontpara.add("粗斜体");
fonttype=new JLabel("字体选择:");
fontsize=new JLabel("字体大小选择:");
fontsizetext=new JTextField("18",2);
fontlist=new JList(fontname);
listscroll=new JScrollPane(fontlist);
fontbuttonpanel=new JPanel();
fontbuttonpanel.setLayout(new FlowLayout(FlowLayout.RIGHT,10,10));
fontbuttonpanel.add(ok);
fontbuttonpanel.add(can);
fontmainpanel=new JPanel();
fontmainpanel.setLayout(new BorderLayout());
fontmainpanel.add(fonttype,BorderLayout.NORTH);
fontmainpanel.add(listscroll,BorderLayout.CENTER);
fontsizepanel=new JPanel();
fontsizepanel.setLayout(new FlowLayout(FlowLayout.RIGHT,10,10));
fontsizepanel.add(fontsize);
fontsizepanel.add(fontsizetext);
fontsizepanel.add(fontpara);
fontdialog=new JDialog(
没有合适的资源?快使用搜索试试~ 我知道了~
基于Java的模拟写字板的设计与实现
共12个文件
class:3个
术士:1个
是:1个
需积分: 1 0 下载量 17 浏览量
2024-05-17
22:49:43
上传
评论
收藏 22KB ZIP 举报
温馨提示
21世纪发展最快的是什么?是互联网!互联网的发展带给人们方便,因此,信息处理的重要性也逐渐突出,人们迫切的需要一款能处理数据和信息的应用软件,因此写字板在当中凸显了它的重要性。然而,对理论的发展和语言的复杂性限制,在中国的理论和方法,研究不能提供中文处理系统的开发和提供足够的支持。多年来,对国内的书写板,书写板处理和自然学科发展的特点是与实际系统中的应用研究发展目标都比较清楚,比较多的投资,也取得了一些成果;研究的基本理论和方法相对薄弱。研究现状和发展趋势,1998-2002年保持不变。在本文中,应用目标,本项目的研究重点是:写字板的文档,信息的检索,自动分类,自动的语音识别和综合,机器翻译,过滤。
资源推荐
资源详情
资源评论
收起资源包目录
基于Java的模拟写字板的设计与实现.zip (12个子文件)
基于Java的模拟写字板的设计与实现
.classpath 301B
.settings
org.eclipse.jdt.core.prefs 598B
src
work
SlNotepad.java 26KB
11 424B
习 424B
是 83B
传 718B
bin
work
SlNotepad.class 22KB
text.class 338B
SlNotepad$1.class 896B
.project 380B
术士 0B
共 12 条
- 1
资源评论
ShaZiJ
- 粉丝: 631
- 资源: 48
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功