版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《Java课程设计》记事本
课程设计报告书目录
一、设计课题
二、设计目的
三、操作环境
四、设计场所(机房号、机器号或自己机器)
五、设计过程(设计内容及主要程序模块)
六、本次设计中用到的课程知识点(列出主要知识点)
七、设计过程中遇到的问题及解决办法
八、程序清单
一、设计课题及内容
课题名称:记事本
(1)内容:文件菜单中包括新建、打开、保存、另存为、退出等菜单
项,其中新建菜单项可以新建一个记事本程序;打开菜单项可以
打开一个用户指定的文本文件,并将其内容显示在记事本的文本
区域;保存和另存为菜单项可分别实现文件的保存和另存为
(2)编辑菜单主要包括复制、剪切和粘贴等菜单项,可分别实现编辑
区文本内容的编辑操作
(3)帮助菜单主要是现实软件版本等信息
(4)记事本还实现了点右键弹出快捷菜单功能,加快文档的编辑效率
(5)记事本文本区引入滚动窗格,实现编辑区的滚动查看
(6)可自行扩充其功能:比如加入格式菜单设置文本的字体等、编辑
菜单中加入查找、替换等菜单项
二、设计目的
熟悉java,awt,java,math,java,swing等包中的组件。
掌握图形界面设计方法。
掌握窗体按钮和文本控件对事件的响应。
/解java自带的函数方法。
三、操作环境
操作系统:MicrosoftWindows10
CPU:IntelCorei5-8300H2.30GHz
内存:8.00GB
四、设计场所
教室b403
五、设计过程(设计内容及主要模块,不少于3000字)
1.设计要求
1)界面设计
2)功能实现
(1)文件菜单:新建、打开、保存、另存为、退出等。
(2)其中新建菜单项可以新建一个记事本程序;打讦菜单项可以打开一个用户
指定的文本文件,并将其内容显示在记事本的文本区域;保存和另存为菜单项可分
别实现文件的保存和另存为
3)编辑菜单:复制、剪切和粘贴等
4)帮助菜单:软件版本信
5)右键弹出快捷菜单
2.总体设计
1)功能模块图:
记事本右键快捷
帮助
关
于
记
事
本
2)功能描述
1、打开记事本。首先是标准型的记事本,拥有文件、编辑。格式和帮助。
如图1所示:
囹记事本程序□x
文信缴他餐式wm
图1标准型记事本界面
2、在标准型的记事本界面中,进行的新建一个本件名字叫新记事本。如图2
闺记事本程序□X
文件ffili格式技购
图2新建记事本功能
3、用打开文件打开刚刚新建的新记事本。如图三所示。
闺记郭搐序□x
文件ffili格式技购
图3一打开文件
4、点击退出即可退出,如图4所示:
1*1记卡本程序-□X
文件靖《修式加助
打开9)
ttft(S)
另存为。
退比(W)S1W
图4一退出记事本
5、点击帮助可以看到有关记事本的相关信息,其中有作者名、版本、许可条款、
隐私声明等必要信息。如图5所示:
图5一帮助相关信息
6、右键可实现复制、粘贴、剪切、清除等常用功能,方便用户可以快捷方便的
使用记事本。如图6所示:
⑷记•本卷序□x
文件wa格式&际
«M(a
魂静网
全咕闻
8W)
•a(m
图6一右键功能
7、编辑也可实现制、把贴、剪切、清除等常用功能,方便用户选择自己适合的
方式,自由选择方使的快捷方式使用。如图7:
匕,记事本程中-□X
文件峭偏格式器助
HM(C)J
站财(V)V
Mffl(X)”x
清除(D)WO
全话网
—
tttt(R)
图7一编辑
3.详细设计
1)流程图如下:
打开程序
新建记事本
相应的Java类有:
Notebook类:主类,添加一些记事本需要的的一些方法,对继承类的一些组件进行实
体化,为每个按钮创建“这是什么”的帮助信息,按右键的时候触发什么,输出相应
的帮助信息,每件事件进行监听,引用的的软件包和部分代码如下:
importjava.io.*;
importjava.awt.event.*;
importjava.awt.
importjavax.swing.*;
importjava,swing.*;
〃功能:提供一组“轻量级”(所有Java语言)组件,尽可能最大程度地在所有平台
上工作。
importjavax.swing.JFrame;
〃功能:构造一个初始时不可见的新窗体。
importjavax.swing.JPanel;
〃功能:创建具有双缓冲和流右局的新JPanel。
importjavax.swing.JLabel;
〃功能:用于短文本字符串或图像或二者的显示区。
importjavax.swing.JButton;
//功能:创建不带有设置文本或图标的按钮。
importjavax.swing.JTcxtField;
//功能:是一个轻量级组件,它允许编辑单行文本。
publicclassNotebook
(
JButtonb_save,b_close;〃按钮
JTextAreatextArea;〃文本框
FiletempFile;〃文件
JPaneljp;〃面板
JLabelstateBar;〃标签
3Labeljl,jj;
textArea=new3TextArea();
Filef=jfc.getSelectedFileO;
FileReaderfr=newFileReader(f);
fr.read(ch);
Stringstr=newString(ch);
textArea.setText(str);
tempFile=f;
Filef=jfc.getSelectedFileO;〃如果没有选取文件,下面的
jfc.getName(f)将会返回输入的文件名
fname=jfc.getName(f);
)
importjava.awt.event.*;
〃功能:提供处理由AWT组件所激发的各类事件的接口和类。
importjava.awt.event.ActionListener;
〃功能:用于接收操作事件的侦听器接口。
importjava.awt.event.KeyListener;
〃功能:〃功能:用于接收键盘事件(击键)的侦听器接口
importjava.awt.event.MouseMotionListener;
〃功能:用于接收组件上的鼠标移动事件的侦听器接口。
importjava.awt.event.WindowListener;
〃功能:用于接收窗口事件的侦听器接口。
importjava.awt.event.TextListcner;
〃功能:用于接收文本事件的侦听器接口。
importjava.awt.event.ItemListener
〃功能:接收项事件的侦听器接=1。
〃编辑区鼠标事件,点击右键弹出“编辑”菜单
textArea.addMouseListener(newMouseAdapter()
{
publicvoidmouseReleased(MouseEvente){
if(e.getButton()==MouseEvent.BUTTONS')
popUpMenu.show(e.getComponent(),e.getX(),e.getY());
)〃e.getComponent。和textArea具有同等效果
publicvoidmouseClicked(MouseEvente){
if(e.getButton()==MouseEvent.BUTTON1)
popUpMenu.setvisible(false);
)
//为窗口添加“关闭”事件的响应
this.addWindowListener(newWindowAdapter()
{
publicvoidwindowclosing(WindowEvente)
{
whenExit();
)
});
〃响应菜单项"新建”的事件
publicvoidactionPerformed(ActionEvente)
{
if(e.getSource()==f_new)
{
saveFileDialog();
return;
)
〃响应菜单项"打开”的事件
if(e.getSource()==f_open){
openFileDialog();}
〃响应菜单项“保存”和“按钮”保存”的事件
if((e.getSource()==b_save)||(e.getSource()==f_save))
{
try(
Stringstr=textArea.getText();
FileWriter-fw=newFileWriter(tempFile);
fw.write(str);
fw.close();
//isCurrentFileExists=true;
tempFile=tempFile;}
catch(Exceptionex){
ex.printStackTrace();
})
〃响应菜单"另存为"的事件
if(e.getSource()==f_saveas){
intoption=jfc.showDialog(this,"另存为”);
Stringfname=null;
if(option==3Fi.leChooser.APPROVE_OPTION)
{
Filef=jfc.getSelectedFile();〃如果没有选取文件,下面的
jfc.getName(f)将会返回输入的文件名
fname=jfc.getName(f);
if(fname!=null&&fname.trim().length()>0){
if(fname.endsWith(".txt"))
J
else(
fname=fname.concat(".txt");
})
if(f.isFile())
fname=f.getName();
f=jfc,getCurrentDirectory();
f=new
File(f.getPath().concat(File.separator).concat(fname));
try(
f.createNewFile();
Stringstr=textArea.getText();
FileWriterfw=newFileWriter(f);
fw.write(str);
fw.close();
)
catch(Exceptionex){
ex.printStackTrace();
}}}
〃响应"退出"菜单和"退出"按钮的事件
if((e.getSource()==f_close)||(e.getSource()==b_close)){
whenExit();
)
if(e.getSource()==ecopy||e.getSource()==jecopy){
copy。;
)
if(e.getSource()==e_paste||e.getSource()==je_paste){
paste。;
)
if(e.getSource()==e_cut||e.getSource()==je_cut){
cut();
)
if(e.getSource()==e_clear||e.getSource()==je_clear){
clear();
)
if(e.getSource()==e_selectAll||e.getSource()==je_selectAll){
selectAll();
)
importjava.awt.*;
〃功能:包含用于创建用户界面和绘制图形图像的所有类。
publicinterfaceActiveEvent
〃功能:知道如何对自身进行指派的事件的接口。
pub1icclassChoice
//功能:Choice类表示一个独出式选择菜单。
publicclassColor
〃功能:用于封装默认sRGB颜色空间中的颜色,或者用于封装由C。功rSpac。标识的任意
颜色空间中的颜色。
publicclassMenu
〃功能:对象是从菜单栏部署的下拉式菜单组件。
publicNotebook()
(
jfc.addChoosableFileFiIter(newFileNameExtensionFilter("文本文件
jmb=newJMenuBar();
textArea=newJTextArea();
jsp=new3ScrollPane(textArea);
file=newJMenu("文件”);
edit=newJMenu("编辑”);
style=newJMenu("格式");
help=newJMenu("帮助”);
je_copy=newJMenuItem("复制(C)");
je_paste=newJMenuItem("粘贴(P)");
je_cut=newJMenuItem("翦切(X)");
je_clear=newJMenuItem("清除(D)");
je_selectAll=newJMenuItem("全选(A)");
je_find=newJMenu1tem("查找(F)");
je_replace=newJMenuItem("替换(R)");
jecopy.addActionListener(this);〃给弹窗式的各组件添加监听器
je_paste.addActionListener(this);
je_cut.addActionListener(this);
je_clear.addActionListener(this);
je_selectAll.addActionListener(this);
je_find.addActionListener(this);
je_replace.addActionListener(this);
〃给界面上方的菜单条添加监听器
f_new=newJMenuItem("新建(N)”);
f_new.setAccelerator(KeyStroke.getKeyStroke('^',InputEvent.CTRLJMSK,false))
;〃设置带修饰符快捷键
f_new.addActionListener(this);
f_open=newJMenuItem("打开(0)”);
f_open.setAccelerator(Keystroke.getKeyStroke('O',InputEvent.CTRL_MASK,false)
);
f_open.addActionListener(this);
f_save=newJMenuItem("保存(S)");
f_save.setAccelerator(Keystroke.getKeyStroke('S',InputEvent.CTRL_MASK,false)
f_save.addActionListener(this);
f_saveas=newJMenuItem("另存为");
f_saveas.setAccelerator(Keystroke.get/CeyStro/?e(KeyEvent.InputEvent.CTRL
|InputEvent.SHIF7^M4SK));
f_saveas.addActionListener(this);
f_close=newJMenuItem("退出(W)");
f_close.setAccelerator(Keystroke.getKeyStroke('W,InputEvent.CTRL_MASKtfalse
));
f_close.addActionListener(this);
e_copy=newJMenuItem("复制(C)”);
e_copy.setAccelerator(Keystroke.getKeyStroke('C',InputEvent.C77?L_AMSK,false)
);
e_copy.addActionListener(this);
e_paste=newJMenu二tem("粘贴(V)");
e_paste.setAccelerator(Keystroke.getKeyStroke('VInputEvent.CTRL_MASK}false));
e_paste.addActionListener(this);
e_cut=newJMenuItem("剪切(X)”);
e_cut.setAccelerator(Keystroke.getKeyStroke('X'?InputEvent.CTRL_MASKfalse))
e_cut.addActionListener(this);
e_clear=newJMenu二tem("清除(D)”);
e_clear.setAccelerator(KeyStroke.getKeyStroke('D,,InputEvent.CTRL_MASK,false));
e_clean.addActionListener(this);
eselectAll=newJMenuItem("全选(A)");
e_selectAll.setAccelerator(KeyStroke.getKeyStroke("A.',InputEvent.CTRL_MASK,fals
e));
e_selectAll.addActionListener(this);
e_find=newJMenu工tem("查找(F)”);
e_find.setAccelerator(Keystroke.get/CeyStro/?e('FInputEventfalse)
);
e_copy.addActionListener(this);
e_replace=newJMenuItem("替换(R)");
e_replace.setAccelerator(KeyStroke.getKeyStroke('R,InputEvent.CTRL_MASKf-fal
se));
e_replace.addActionListener(this);
s_font=newJMenu工tem("字体(T)");
s_font.setAccelerator(Keystroke.getKeyStroke{'T',InputEvent.CTRL_MASK,false));
s_font.addActionListener(this);
s_color=newJMenu二tem("颜色(C)...;
s_color.setAccelerator(KeyStroke.get/<eyStro/?e(KeyEvent.l/K^C,InputEvent
K|InputEvent.SHIFTIAWSK-));
s_color.addActionListener(this);
h_editor=newJMenuItem("关于记事本”);
h_editor.setAccelerator(Keystroke.get/Cey5t/'o/?e(KeyEvent.InputEvent.CTRL_MA
SK));
h_editor.addActionListener(this);
h_help=newJMenuItem("帮助信息(H)”);
h_help.setAccelerator(KeyStroke.get/CeyStro/?e(KeyEventInputEvent.CTRL_MASK
));
h_help.addActionListener(this);
〃添加右键弹出式菜单
popUpMenu.add(je_copy);
popUpMenu.add(je_paste);
popUpMenu.add(je_cut);
popUpMenu.add(je_clear);
popUpMenu.addSeparator();
popUpMenu.add(je_selectAll);
popUpMenu.add(je_find);
popUpMenu.add(je_replace);
)
〃创建颜色选择对话框
if(e.getSource()==s_color){
Colorc=JColorChooser.sbowDiaLog(this,"请诜择文字颜色",Color.cyan);
if(c!=null){
textArea.setForeground(c);
)
else
textArea.setForeground(textArea.getForeground());
}
JFrame类:被继承类的父类,对代码所用到的所以按键、菜单、文本进行定义。
publicclassNotebookextendsJFrameimplementsActionListener^ItemListenerf
〃组件创建
^Buttonb_save,b_close;〃按钮
JTextAreatextArea;〃文本框
FiletempFile;〃文件
JPaneljp;〃面板
JMenufile,edit,style,help;〃菜单
JMenuitem
f_new,f_open,f_save,f_close,f_saveas,e_copy,e_paste,e_cut>e_clear>e_selectAllJe
_find,e_replace,s_font,s_color,h_editor,h_help;〃菜单条
JMenuBarjmb;
DScrollPanejsp;〃滚动面板
DPopupMenupopUpMenu=newJPopupMenu();〃右,犍弹出式菜单
JLabelstateBar;〃标签
3Labeljljj;
DFileChooserjfc=newJFileChooser();〃文件选择
JMenuitemje_copy,je_paste,je_cut,je_clear,je_selectAll,je_find,je_replace;
〃弹出式菜单条
2)所用的部分图形组件的定义:
JMenuBarmcnuRar;〃菜单条
MenueditMenu,viewMenu,helpMenu,timesys;〃菜单:编辑、查看、帮助
JMenuItemeditMenucopy,editMenupaste;〃“编转”的菜单项
JRadioButtonMenuTtemviewMenu_standarT}rpe://“查看”的菜单项
JMenuItemhelpMenuhelpTopic,helpMenuaboutCal;〃〃帮助”的菜单项
JTextFielddisplayField;〃文本框
JButtonhtnBackspace;〃按钮
JLabelIblSystemType;〃用作边框的标签
JPopupMenupopupMenu;〃弹出菜单及菜单项
Containerdlgtipscon;〃用于显示帮助提示信息的对话框(无边框)
3.定义了组件的初始化以及对界面的排版
1)对总框架的总体布局对主框架的初始化操作(仅给出标准型的)
this.textArea("文本框");
〃设置部分菜单项的可见性
jp.setVisible(false);
file.setVisible(false);
edit.setVisible(false);
styIP.setVisihlp(fqlSP);
help.setVisible(false);
fnew.setVisible(false);
fopen.setVisible(false);
f_save.setVisible(false);
fclose.setVisible(false);
fsavcas.sctVisible(false);
ecopy.setVisible(false);
epaste.setVisible(false);
e_cut.setVisible(false);
〃设置一些组件的可见性
eclear.setVisible(false);
e_selectAl1.setVisible(false);
e_find.setVisible(false);
ereplace.setVisible(false);
s_font.setVisible(false):
scolor.setVisible(false);
heditor.setVisible(false);
h_help.setVisible(false);
jmb.setVisible(false);
stateBar.setVisible(false);
jl.setVisible(false);
jj.setVisible(false);
jecopy.setVisible(false);
je_paste.setVisible(false);
jecut.setVisible(false);
jeclear.setVisible(false);
je_selectAl1.setVisible(false);
je_find.setVisible(false);
jereplace.setVisible(false);
〃设置窗口大小和可见性
this.setSize(260,245);
this.setVisible(true);
)
3)记事本运算部分程序的执行过程:
在该类中,创建监听,响应相应的事件。
publicvoidmouseReleased(MouseEvente){
if(e.getButtonO==MouseEvent.BUTT0N3)
popUpMenu.show(e.getComponent(),e.getX(),e.getY());
publicvoidmousedickcd(MouseEventc){
if(c.gctButton()==MouseEvent.BUTTON1)
popUpMenu.setVisible(false);
if(stateBar.getText().equals("已保存")||stateBar.gctText().equals("新
文档〃)){
returntrue;
)
else{
returnfalse;
)
if(m==JFileChooser.APPROVE_OPTTON){
Filef=jfc.getSelectedFileO;
for(inti=0;i<=f.length();i++){
char[]ch一newchar[i];
try(
File-Readerfr=newFi1eReader(f);
fr.read(ch);
Stringstr=newString(ch);
textArea.setText(str);
tcmpFile=f;
)
catch(lOExceptione){
e.printStackTraceO;
}))
else
return;
)
if(options==JFileChooser.APPROVE_OPTTON)
(
Filef=jfc.gctSelectcdFileO;//如果没有选取文件,下面
的jfc.gctNamc(f)将会返回输入的文件名
fname=jfc.gctName(f);
if(fname!=nul1&&fname.trim().length()>0)
(
if(fname.cndsWithtxt"));
else
fname=fname.concatC.txt");
)
if(e.gctSource()==fnew)
(
savcFiIcDiclog();
return;
)
if(e.gctSource()==fopen)
(
openFilcDialogO;
}
if(e.getSource()==f_saveas)
(
intoption=jfc.showDialog(this,“另存为”);
Stringfname=null;
if(option==JFileChooser.APPROVE_OPTION)
(
Filef=Jfc.getSelectedFileO;//如果没有选取文件,下面的
jfc.gctNamc(f)将会返回输入的文件名
fname=jfc.getName(f);
if(fname!=nul1&&fname.trim(),length()>0)
(
if(fname.endsWithC.txt"))
»
else
(
fname=fname.concatC.txt");
)
if(c!=null)
(
textArca.setForeground(c);
1
else
textArca.setForeground(textArca.getForeground());
1
if((e.gctSourccO==fclose)(e.getSourceO==b_close)){
whenExit();
)
if(e.getSourceO==e_copy||e.getSourceO==je_copy){
copy();
)
if(e.getSourceO==e_paste||e.getSourceO==je_paste){
paste();
)
if(e.getSourceO==e_cut||e.getSource()==je_cut){
cut();
)
if(e.getSourceO==c_clcar||e.getSourceO==je_clcar){
clear();
)
if(e.getSourceO==e_sclcctAll||e.getSourceO
je_sclcctAll){{
selcctAl1();
)
实现的接口:ActionListener>KeyListener和MouseMotionListenero
textArca.addMousel.istener(newMouscAdapter()(
publicvoidmouseRoleased(MouseEvcnte){
if(e.getButton()==MouseEvent.BUTTONS)
popUpMenu.show(e.getComponcnt(),e.getX(),e.getY());
}//e.getComponcnt()和textArea具有同等效果
publicvoidmousedieked(MouseEvcnte)(
if(e.getButton()==MouseEvent.BUTTON1)
popUpMcnu.sctVisiblc(falsc);
}});
(
je_copy.addActionListener(this);〃给弹窗式的各组件添加监听器
je_paste.addActionListener(this);
je_cut.addActionListoner(this);
je_clear.addActionListener(this);
je_selectAll.addActionListener(this);
je_find.addActionListener(this);
je_rcplace.addActionListener(this);
)
六、设计中用到的课程知识点
Java语言程序设计:
布局管理器:BorderLayout>GridLayout
窗体类:JFrame,JButton,JMenubar,JMenultem,JMenu,JLabel,
JCheckBox,JPopupMenu,JTextField,
七、设计中遇到的问题及解决方法
1.忘记一些老师上课讲的细节知识点。
翻书找回记忆。
2.右键功能不知道怎么实现,上课老师视乎没有讲过3
旁触类通,查找网上资料,右键类似与左键。
3.复制、剪切、粘贴等功能•起使用时不熟悉不顺畅、
翻书查资料,上网搜资料。
八、程序清单
packagetest;
file=newJMenu("文件");
importjava.io.Filc;edit=newJMenu("编辑");
importjava.io.*;style=newJMenu("格式");
importjava.awt.event.*;help=newJMenu("帮助)
importjava.awt.Toolkit;
importjava.awt.*;ie_copy=newJMenuItem("复制(C)
importjavax.swing.*;”);
importjavax.swing.filcchooscr.^;jc_pasic=newJMenuItem("粘贴(P)
");
publicclassNotebookextendsJFrameje_cut=newJMenuIlem("剪切(X)
implementsAc(ionListcncr,ItcmLis(cncr{");
〃组件创建je_clear=newJMenuIlem("清除(D)
JButtonb_save,b_close;〃按钮”);
JTcxtArca(cxlArca;〃文本框jc_sclcctAII=newJMenuItem("全
FiletempFile;〃文件选(A)");
JPancljp;〃面板jc_find=newJMenuItem("查找(F)
JMenufile.cdit,s(ylc.hclp;,菜单");
JMenuItemje_replace=newJMenuIlem("替换
f_new,Lopen,fLsave,f_close,Lsaveas,e_copy,(R)”);
e_paste,e_cut.e_clear,e_se!ectAll,e_find,e_rep
lace,s_fbnt,s_color,h_editor,h_help;〃菜单条je_copy.addActionListener(this);//
JMenuBarjmb;给弹窗式的各组件添加监听器
JScrollPanejsp:〃滚动面板jc_pastc.addAc(ionListcncr(this);
JPopupMenupopUpMenu=newje_cutaddActionListener(this);
JPopupMenu。;〃右键弹出式菜单je_clear.addActionListeiier(this);
JLabclstateBarW标签
JLabeljl,jj;je_selectAll.addActionListener(this);
JFileChooserjfc=newJFileChooser();Hje_find.addActionListener(this);
文件选择je_rcplace.addActionListcner(this);
JMenuItem
je_copy,je_paste,je_cut,je_clear,je_selectAll,je〃给界面上方的菜单条添加监听器
_find.je_rcplacc:〃弹出式菜单条f_ncw=newJMcnuItcm("新建
publicNotebook()(N)");
(
jfc.addChoosableFilcFiltcrfncwLnew.setAccclera(or(KeyS(roke.gc(KcyS
FileNameExtensionFilter("文本文件troke('N',InputEvent.CTRL_MASK,false));//
设置带修饰符快捷键
jmb=newJMenuBarO;f_new.addAc(ionListener(this);
textArea=newJTextArea();
jsp=newJScrollPane(textArea);Copen=newJMenuItem("打开
(or);
e_cut.setAccelerator(KeyStroke.getKeyStroke
f_opcn.sctAccclcrator(KeyStrokc.gciKey('X',Inpu(Evcnt.CTRL_MASK,false));
Stroke('O,,InputEvent.CTRL_MASK.false));e_cut.addActionListener(this);
Copen.addActionListener(this);
e_clear=newJMenuItem(w清除
f_save=newJMenuItem("保存(D)");
c_clcar.sctAccclcrator(KcyStrokc.gc[KcyS(rok
f_save.setAccelerator(Keystroke.getKeye('D',InputEvenl.CTRL_MASK.false));
StrokeCS\InputEvent.CTRL_MASK,false));e_clear.addActionListener(this);
f_savc.addActionListcncr((his);
e_selectAIl=newJMenuItem("全
Lsaveas=newJMenuItem("另存为选(A)”);
");
e_selectAll.selAccelerator(Keystroke.getKey
f_saveas.setAccelerator(KeyStroke.getKeStroke('A,,InputEvent.CTRL_MASK,false));
ySlrokc(KcyEvcnt.VK_S,InpuiEvcnt.CTRL_c_sclcc(All.addActionListcncr(this);
MASK|InputEvent.SHIFT_MASK));
Csavcas.addActionListcncr(this);c_find=newJMcnuItcm("查找
(F)”);
f_close=newJMenuItem("退出
(W)");e_find.setAccelerator(KeyStroke.getKeyStrok
e(,F,InputEvent.CTRL_MASK,false));
f_close.setAccelerator(KeyStroke.getKeye_copy.addActionListener(this);
Stroke('W'JnputEvent.CTRL_MASK,false));
f_close.addActionLis(encr(this);e_rcplacc=newJMcnuIlcm("替换
(R)”);
e_copy=newJMenuItem("复制
。");e_replace.setAccclerator(KeyStrokc.gc(K
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车文化课件 第六章 未来汽车 第一节 汽车智能化
- 化工企业班组长培训课件
- 化工企业环保培训教学课件
- 化工企业大修安全课件
- 2025年利率债市场展望:稳进求质御波而行
- 飞梭技术介绍
- 2026四川成都新都区第三幼儿园招聘10人备考考试试题及答案解析
- 2026湖南益阳桃江县教师公开选调98人考试备考试题及答案解析
- 雀巢公司活动策划方案(3篇)
- 六一活动酒店策划方案(3篇)
- 初中寒假前心理健康教育主题班会课件
- 事业编退休报告申请书
- 原发性骨髓纤维化2026
- 半导体厂务项目工程管理 课件 项目6 净化室系统的设计与维护
- 河南省洛阳强基联盟2025-2026学年高二上学期1月月考英语试题含答案
- 2026年中考数学模拟试卷试题汇编-尺规作图
- 玻璃钢水箱安装详细技术方案
- 山东省烟台市开发区2024-2025学年上学期期末八年级数学检测题(含答案)
- 桂花香包制作课件
- 社会工作本科毕业论文
- (2025年)架子工考试模拟题(带答案)
评论
0/150
提交评论