java做的简易记事本含快捷键查找替换等
记事本程序(全版)
《记事本程序》的设计与实现一、设计分析1.1系统概述记事本主要是对文字实行编辑处理的软件。
能实行新建、打开、保存等功能;并且能使用剪贴、复制、粘贴、清除功能,对文字更方便的录入。
另外还能够根据用户的需要查找相对应的文字,实现编辑功能。
1.2系统运行环境●操作系统:Windows XP●开发语言: JAVA●开发工具:JCreatorPro1.3功能需求描述因为记事本是一套简单的文本编辑器。
要求记事本不但要具备完善的编辑、方便的性能,还要提供更简便的操作。
这就要求设计人员在编辑过程当中尽可能的考虑到。
包括以下内容:1、对文本实行编辑;2、用户根据不同的权限可对文本实行添加、删除、修改等操作;3、对记事本实行各种编辑(精确、简单);二、总体设计记事本采用现有的编辑,简单的记事本编辑器,充分利用大家现有的编辑,减少大家的时间,提升大家对记事本的熟练。
记事本就具备编辑功能,能够即时根据大家需求实行新建、保存操作。
记事本筐架图2-1三、系统的实现3.1主界面包括文件、编辑、查找、协助操作界面子目录包括 复制、粘贴、新建、查找等,如图3-1显示。
图3-1.1记事本小程序文件 编辑 查找 帮助新建保存打开复制粘贴清除查 找查找 替换帮助图3-1.2图3-1.3图3-1.43.1完成图3-1程序代码如下import java.awt.*;import java.awt.event.*;import java.io.*;import java.awt.datatransfer.*;class MyMenuBar extends MenuBar{public MyMenuBar(Frame parent){parent.setMenuBar(this);}public void addMenus(String [] menus){for(int i=0;i<menus.length;i++)add(new Menu(menus[i]));}public void addMenuItems(int menuNumber,String[] items){for(int i=0;i<items.length;i++){if(items[i]!=null)getMenu(menuNumber).add(new MenuItem(items[i])); else getMenu(menuNumber).addSeparator();}}public void addActionListener(ActionListener al){for(int i=0;i<getMenuCount();i++)for(int j=0;j<getMenu(i).getItemCount();j++)getMenu(i).getItem(j).addActionListener(al);}}class MyFile{private FileDialog fDlg;public MyFile(Frame parent){fDlg=new FileDialog(parent,"",FileDialog.LOAD);}private String getPath(){return fDlg.getDirectory()+"\\"+fDlg.getFile();}public String getData() throws IOException{fDlg.setTitle("打开");fDlg.setMode(FileDialog.LOAD);fDlg.setVisible(true);BufferedReader br=new BufferedReader(new FileReader(getPath()));StringBuffer sb=new StringBuffer();String aline;while((aline=br.readLine())!=null)sb.append(aline+'\n');br.close();return sb.toString();}public void setData(String data) throws IOException{fDlg.setTitle("保存");fDlg.setMode(FileDialog.SAVE);fDlg.setVisible(true);BufferedWriter bw=new BufferedWriter(new FileWriter(getPath()));bw.write(data);bw.close();}}class MyClipboard{private Clipboard cb;public MyClipboard(){cb=Toolkit.getDefaultToolkit().getSystemClipboard();}public void setData(String data){cb.setContents(new StringSelection(data),null);}public String getData(){Transferable content=cb.getContents(null);try{return (String) content.getTransferData(DataFlavor.stringFlavor);//DataFlavor.stringFlavor会将剪贴板中的字符串转换成Unicode码形式的String对象。
java课程设计
课程设计(论文)题目名称记事本程序课程名称java 程序设计课程设计学生姓名学号系、专业指导教师2010年1 月3 日摘要本次课程设计的题目是用JA V A语言编写记事本程序,要求是:用图形界面实现;含有简单的文字编辑功能,如:剪切、复制、粘贴、删除;还能实现保存、另存为、查找、替换等功能。
本程序主要用到了Java swing组件和事件监听器,还用到了文件的输入输出流。
记事本的界面参考了Windows中的记事本界面,并且根据课程设计要求做了适当的调整。
关键词:记事本程序;Java语言;swing组件目录1 问题描述 (3)2 需求分析 (3)3 概要设计 (3)3.1自定义类说明 (3)3.2 程序流程图 (7)4 详细设计 (7)4.1 jishiben类的实现 (7)4.2 GUI程序界面设计 (7)4.3 事件处理 (9)5 测试分析 (12)6 课程设计总结 (16)6.1设计体会 (16)6.2致谢 (16)参考文献 (17)附录(源程序清单) (18)1 问题描述设计一个具有GUI界面的记事本,含有简单的文字编辑功能,如:剪切、复制、粘贴、删除;还能实现保存、另存为、查找、替换等功能。
这次课程设计由卢炜、刘秀春、伍霜霜和我四个人合作完成。
卢炜负责概要设计,刘秀春负责4.1 jishiben类的实现和4.2 GUI程序界面设计,伍霜霜负责5测试分析。
由于4.3事件处理和撰写程序关系密切,这两项都由我负责。
并且根据伍霜霜的测试的结果重新调整程序。
2 需求分析本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面:(1)、菜单中有“文件”、“编辑”、“帮助”三个主菜单;(2)、“文件”有“新建”、“打开”、“保存”、“另存为”、“退出”分别用于新建文件,打开文件,保存文件,另存文件,退出记事本。
(3)、“编辑”中,有“剪切”、“复制”、“粘贴”、“删除”、“查找”、“替换”、“全选”七个子菜单:用于剪切文字,复制文字,粘贴文字,删除文字,查找文件中的指定的字符串,替换文件中的指定的字符串,选定整个文件。
Java编写的简单记事本
如何利用快捷键快速搜索和替换文本
如何利用快捷键快速搜索和替换文本在现代生活中,电脑已经成为我们日常工作和学习中不可或缺的工具。
处理大量文字信息的任务时,我们时常需要进行搜索和替换文本的操作。
然而,手动搜索和替换可能耗费时间和精力,因此学会如何利用快捷键可以让我们更加高效地完成这些任务。
一、快捷键介绍1. 搜索文本快捷键:- Windows系统:Ctrl + F- Mac系统:Command + F2. 替换文本快捷键:- Windows系统:Ctrl + H- Mac系统:Command + Option + F二、快速搜索文本当我们需要查找一个特定的词语、短语或者字符时,可以使用搜索文本快捷键,以下是具体的步骤:1. 打开一个文本编辑器或者浏览器中的页面。
2. 按下搜索文本快捷键,此时会弹出一个搜索框。
3. 在搜索框中输入要查找的词语、短语或者字符。
4. 随着我们输入的内容,文本编辑器或者浏览器会自动定位到第一个匹配项,并将其高亮显示。
5. 可通过按下Enter键或通过点击右侧的下一个按钮,在文本中查找下一个匹配项。
6. 若要关闭搜索框,可以按下Escape键或点击搜索框旁边的关闭按钮。
通过快捷键进行文本搜索,可以帮助我们快速定位到需要的信息,节省了手动滚动浏览的时间。
与此同时,我们可以通过使用搜索框旁边的其他选项,如匹配大小写、全字匹配等来进一步精确搜索结果。
三、快速替换文本当我们想要将文本中的一个词语、短语或字符替换为另外一个内容时,可以使用替换文本快捷键,以下是具体的步骤:1. 打开一个文本编辑器或者浏览器中的页面。
2. 按下替换文本快捷键,此时会弹出一个替换框。
3. 在替换框的第一个文本框中输入要替换的内容。
4. 在替换框的第二个文本框中输入将要替换为的新内容。
5. 在文本编辑器或者浏览器中使用搜索文本快捷键,定位到第一个要替换的匹配项。
6. 点击替换按钮,或者按下快捷键(Windows系统是Alt + R,Mac 系统是Command + Option + F)替换第一个匹配项;点击替换全部按钮,或者按下快捷键(Windows系统是Alt + A,Mac系统是Command + Option + G)替换所有匹配项。
快速查找替换方法
快速查找替换方法在日常生活和工作中,我们经常需要查找并替换文本中的某些内容。
无论是编辑文档、处理数据还是编程开发,快速而准确地进行查找和替换是提高工作效率的重要一环。
在本文中,将介绍几种常用的快速查找替换方法,帮助您更有效地处理相关任务。
一、文本编辑软件中的查找替换功能大多数文本编辑软件都提供了查找替换功能,例如Microsoft Word、Sublime Text、Notepad++等。
通过使用这些软件的查找替换功能,您可以轻松地查找并替换指定的文本内容。
例如,在Microsoft Word中,您可以按下快捷键Ctrl + F打开查找对话框,在“替换”选项卡中输入要查找的内容和替换内容,然后点击“全部替换”按钮即可一次性替换所有匹配项。
其他文本编辑软件的操作方式类似。
二、使用正则表达式进行查找替换正则表达式是一种强大的文本匹配工具,可以帮助您更灵活地进行查找替换。
使用正则表达式,您可以根据自定义的规则匹配文本,并进行相应的替换操作。
例如,您可以使用正则表达式来查找并替换所有以大写字母开头的单词。
在大多数文本编辑软件中,您可以在查找替换功能中启用正则表达式选项,并输入相应的表达式进行匹配和替换。
三、编程语言中的查找替换方法如果您需要处理大量的数据或者进行复杂的查找替换操作,编程语言可能更适合您的需求。
几乎所有的编程语言都提供了字符串操作函数,可以用于查找和替换文本内容。
例如,在Python中,可以使用字符串的replace方法来进行简单的替换操作。
如果需要进行更复杂的匹配和替换,可以使用正则表达式模块re来处理。
四、使用特定工具进行批量替换如果您需要对多个文件或者大量文本进行批量替换,手动逐个文件或文本进行操作可能十分耗时。
这时,可以考虑使用专门的工具进行批量替换。
例如,对于Windows系统,您可以使用批处理脚本(.bat)或者PowerShell脚本来进行批量替换操作。
而对于Mac和Linux系统,您可以使用Shell脚本来实现相同的功能。
《Java》课程设计》记事本
《Java课程设计》记事本课程设计报告书目录一、设计课题二、设计目的三、操作环境四、设计场所(机房号、机器号或自己机器)五、设计过程(设计内容及主要程序模块)六、本次设计中用到的课程知识点(列出主要知识点)七、设计过程中遇到的问题及解决办法八、程序清单五、设计过程(设计内容及主要模块,不少于3000字)1.设计要求1)界面设计2)功能实现(1)文件菜单:新建、打开、保存、另存为、退出等。
(2)其中新建菜单项可以新建一个记事本程序;打开菜单项可以打开一个用户指定的文本文件,并将其内容显示在记事本的文本区域;保存和另存为菜单项可分别实现文件的保存和另存为3)编辑菜单:复制、剪切和粘贴等4)帮助菜单:软件版本信5)右键弹出快捷菜单2.总体设计1)功能模块图:图一功能模块图2)功能描述1、打开记事本。
首先是标准型的记事本,拥有文件、编辑。
格式和帮助。
如图1所示:图1标准型记事本界面2、在标准型的记事本界面中,进行的新建一个本件名字叫新记事本。
如图2记事本文件帮助新建打开保存另存为退出复制剪切粘贴编辑关于记事本右键快捷格式字体颜色图2新建记事本功能3、用打开文件打开刚刚新建的新记事本。
如图三所示。
图3—打开文件4、点击退出即可退出,如图4所示:图4—退出记事本5、点击帮助可以看到有关记事本的相关信息,其中有作者名、版本、许可条款、隐私声明等必要信息。
如图5所示:图5—帮助相关信息6、右键可实现复制、粘贴、剪切、清除等常用功能,方便用户可以快捷方便的使用记事本。
如图6所示:图6—右键功能7、编辑也可实现制、粘贴、剪切、清除等常用功能,方便用户选择自己适合的方式,自由选择方便的快捷方式使用。
如图7:图7—编辑八、程序清单package test;import java.io.File;import java.io.*;import java.awt.event.*;import java.awt.Toolkit;import java.awt.*;import javax.swing.*;import javax.swing.filechooser.*;public class Notebook extends JFrame implements ActionListener,ItemListener{ //组件创建JButton b_save,b_close; //按钮JTextArea textArea; //文本框File tempFile; //文件JPanel jp; //面板JMenu file,edit,style,help; //菜单JMenuItemf_new,f_open,f_save,f_close,f_saveas,e_copy, e_paste,e_cut,e_clear,e_selectAll,e_find,e_rep lace,s_font,s_color,h_editor,h_help; //菜单条JMenuBar jmb;JScrollPane jsp; //滚动面板JPopupMenu popUpMenu = new JPopupMenu(); //右键弹出式菜单JLabel stateBar;//标签JLabel jl,jj;JFileChooser jfc = new JFileChooser(); //文件选择JMenuItemje_copy,je_paste,je_cut,je_clear,je_selectAll,je _find,je_replace; //弹出式菜单条public Notebook(){jfc.addChoosableFileFilter(new FileNameExtensionFilter("文本文件(*.txt)","txt"));jmb = new JMenuBar();textArea = new JTextArea();jsp = new JScrollPane(textArea);file = new JMenu("文件");edit = new JMenu("编辑");style = new JMenu("格式");help = new JMenu("帮助");je_copy = new JMenuItem("复制(C) ");je_paste = new JMenuItem("粘贴(P) ");je_cut = new JMenuItem("剪切(X) ");je_clear = new JMenuItem("清除(D) ");je_selectAll = new JMenuItem("全选(A) ");je_find = new JMenuItem("查找(F) ");je_replace = new JMenuItem("替换(R) ");je_copy.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 = new JMenuItem("新建(N)");f_new.setAccelerator(KeyStroke.getKeyS troke('N',InputEvent.CTRL_MASK,false)); //设置带修饰符快捷键f_new.addActionListener(this);f_open = new JMenuItem("打开(O)");f_open.setAccelerator(KeyStroke.getKey Stroke('O',InputEvent.CTRL_MASK,false));f_open.addActionListener(this);f_save = new JMenuItem("保存(S)");f_save.setAccelerator(KeyStroke.getKey Stroke('S',InputEvent.CTRL_MASK,false));f_save.addActionListener(this);f_saveas = new JMenuItem("另存为");f_saveas.setAccelerator(KeyStroke.getKe yStroke(KeyEvent.VK_S,InputEvent.CTRL_ MASK|InputEvent.SHIFT_MASK));f_saveas.addActionListener(this);f_close = new JMenuItem("退出(W)");f_close.setAccelerator(KeyStroke.getKey Stroke('W',InputEvent.CTRL_MASK,false));f_close.addActionListener(this);e_copy = new JMenuItem("复制(C)");e_copy.setAccelerator(KeyStroke.getKey Stroke('C',InputEvent.CTRL_MASK,false));e_copy.addActionListener(this);e_paste = new JMenuItem("粘贴(V)");e_paste.setAccelerator(KeyStroke.getKeyStro ke('V',InputEvent.CTRL_MASK,false));e_paste.addActionListener(this);e_cut = new JMenuItem("剪切(X)"); e_cut.setAccelerator(KeyStroke.getKeyStroke ('X',InputEvent.CTRL_MASK,false));e_cut.addActionListener(this);e_clear = new JMenuItem("清除(D)");e_clear.setAccelerator(KeyStroke.getKeyStrok e('D',InputEvent.CTRL_MASK,false));e_clear.addActionListener(this);e_selectAll = new JMenuItem("全选(A)");e_selectAll.setAccelerator(KeyStroke.getKey Stroke('A',InputEvent.CTRL_MASK,false));e_selectAll.addActionListener(this);e_find = new JMenuItem("查找(F)");e_find.setAccelerator(KeyStroke.getKeyStrok e('F',InputEvent.CTRL_MASK,false));e_copy.addActionListener(this);e_replace = new JMenuItem("替换(R)");e_replace.setAccelerator(KeyStroke.getK eyStroke('R',InputEvent.CTRL_MASK,false)) ;e_replace.addActionListener(this);s_font = new JMenuItem("字体(T)");s_font.setAccelerator(KeyStroke.getKeyStrok e('T',InputEvent.CTRL_MASK,false));s_font.addActionListener(this);s_color = new JMenuItem("颜色(C)...");s_color.setAccelerator(KeyStroke.getKeyStro ke(KeyEvent.VK_C,InputEvent.CTRL_MAS K | InputEvent.SHIFT_MASK));s_color.addActionListener(this);h_editor = new JMenuItem("关于记事本");h_editor.setAccelerator(KeyStroke.getKeyStro ke(KeyEvent.VK_E,InputEvent.CTRL_MAS K));h_editor.addActionListener(this);h_help = new JMenuItem("帮助信息(H)");h_help.setAccelerator(KeyStroke.getKeyStrok e(KeyEvent.VK_I,InputEvent.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);//编辑区鼠标事件,点击右键弹出"编辑"菜单textArea.addMouseListener(new MouseAdapter(){public void mouseReleased(MouseEvent e) {if(e.getButton() == MouseEvent.BUTTON3)popUpMenu.show(e.getComponent(), e.getX(), e.getY());} //e.getComponent()和textArea具有同等效果public void mouseClicked(MouseEvent e){if(e.getButton() == MouseEvent.BUTTON1)popUpMenu.setVisible(false);}});this.setJMenuBar(jmb);this.setTitle("记事本程序");file.add(f_new); //添加文件菜单组件file.add(f_open);file.addSeparator(); //加分隔线file.add(f_save);file.add(f_saveas);file.addSeparator();file.add(f_close);edit.add(e_copy); //添加编辑菜单组件edit.add(e_paste);edit.add(e_cut);edit.add(e_clear);edit.addSeparator();edit.add(e_selectAll);edit.add(e_find);edit.add(e_replace);style.addSeparator();style.add(s_font);style.add(s_color);jmb.add(file); //添加格式菜单组件jmb.add(edit);jmb.add(style);jmb.add(help);help.add(h_editor); //添加帮助菜单组件help.add(h_help);//textArea.setWrapStyleWord(true); //设置在单词过长的时候是否要把长单词移到下一行。
java编写的记事本源代码
import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.text.*;import javax.swing.event.*;public class IJMFrame extends JFrame {Document document = null;JTextArea textArea = new JTextArea();JScrollPane scrollPane = new JScrollPane(textArea); EditController controller;//------ 定义菜单变量------//JMenuBar menuBar = new JMenuBar();JMenu menuFile = new JMenu("文件");JMenu menuEdit = new JMenu("编辑");JMenu menuFormat = new JMenu("格式"); JPopupMenu memuPopup = new JPopupMenu(); JMenuItem itemNew = new JMenuItem("新建"); JMenuItem itemOpen = new JMenuItem("打开"); JMenuItem itemSave = new JMenuItem("保存"); JMenuItem itemSaveAs = new JMenuItem("另存"); JMenuItem itemExit = new JMenuItem("退出"); JMenuItem itemUndo = new JMenuItem("撤消"); JMenuItem itemCut = new JMenuItem("剪切"); JMenuItem itemCopy = new JMenuItem("复制"); JMenuItem itemPaste = new JMenuItem("粘贴"); JMenuItem itemDelete = new JMenuItem("删除"); JMenuItem itemFind = new JMenuItem("查找"); JMenuItem itemReplace = new JMenuItem("替换"); JMenuItem itemSelectAll = new JMenuItem("全选"); JMenuItem itemFont = new JMenuItem("字体");//------------定义右键菜单------------------------// JMenuItem popupMenu_Undo=new JMenuItem("撤销"); JMenuItem popupMenu_Cut=new JMenuItem("剪切"); JMenuItem popupMenu_Copy=new JMenuItem("复制"); JMenuItem popupMenu_Paste=new JMenuItem("粘贴"); JMenuItem popupMenu_Delete=new JMenuItem("删除"); JMenuItem popupMenu_SelectAll=new JMenuItem("全选");public IJMFrame() {super("记事本");setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setJMenuBar(menuBar);//创建新的菜单栏getContentPane().add(scrollPane);document = textArea.getDocument();textArea.setLineWrap(true);// 默认为换行textArea.setWrapStyleWord(true);//-- 设置菜单--//itemUndo.setEnabled(false);menuBar.add(menuFile);menuBar.add(menuEdit);menuBar.add(menuFormat);menuFile.add(itemNew);menuFile.add(itemOpen);menuFile.add(itemSave);menuFile.add(itemSaveAs);menuFile.addSeparator();menuFile.add(itemExit);menuEdit.add(itemUndo);menuEdit.addSeparator();menuEdit.add(itemCut);menuEdit.add(itemCopy);menuEdit.add(itemPaste);menuEdit.add(itemDelete);menuEdit.addSeparator();menuEdit.add(itemFind);menuEdit.add(itemReplace);menuEdit.add(itemSelectAll);menuFormat.add(itemFont);popupMenu_Undo.setEnabled(false); // 撤消选项初始设为不可用memuPopup.add(popupMenu_Undo);memuPopup.addSeparator();memuPopup.add(popupMenu_Cut);memuPopup.add(popupMenu_Copy);memuPopup.add(popupMenu_Paste);memuPopup.add(popupMenu_Delete);memuPopup.addSeparator();memuPopup.add(popupMenu_SelectAll);//-- 增加菜单的侦听者--//controller = new EditController(this);itemNew.addActionListener(controller);itemOpen.addActionListener(controller);itemSave.addActionListener(controller);itemSaveAs.addActionListener(controller);itemExit.addActionListener(controller);itemUndo.addActionListener(controller);itemCut.addActionListener(controller);itemCopy.addActionListener(controller);itemPaste.addActionListener(controller);itemDelete.addActionListener(controller);itemFind.addActionListener(controller);itemReplace.addActionListener(controller);itemSelectAll.addActionListener(controller);itemFont.addActionListener(controller);popupMenu_Undo.addActionListener(controller);popupMenu_Cut.addActionListener(controller);popupMenu_Copy.addActionListener(controller);popupMenu_Paste.addActionListener(controller);popupMenu_Delete.addActionListener(controller);popupMenu_SelectAll.addActionListener(controller);document.addDocumentListener(controller);document.addUndoableEditListener(controller);addWindowListener(controller);MouseAdapter mAdapter=new MouseAdapter(){public void mousePressed(MouseEvent e) {checkForTriggerEvent(e);}public void mouseReleased(MouseEvent e) {checkForTriggerEvent(e);}private void checkForTriggerEvent(MouseEvent e) {if (e.isPopupTrigger())memuPopup.show(e.getComponent(), e.getX(), e.getY());// 在组件调用者的坐标空间中的位置// X、Y// 显示弹出菜单。
编程开发工具常用应用的快捷键大全
编程开发工具常用应用的快捷键大全快捷键是程序员在编程开发过程中不可或缺的工具,它能够提高开发效率,简化繁琐的操作,让程序员更加专注于代码的编写和调试。
下面是一些常用的编程开发工具快捷键的大全。
一、文本编辑器的快捷键1. Ctrl + S:保存当前文件2. Ctrl + Z:撤销上一步操作3. Ctrl + Y:恢复上一步撤销的操作4. Ctrl + X:剪切选中的内容5. Ctrl + C:复制选中的内容6. Ctrl + V:粘贴剪切/复制的内容7. Ctrl + A:全选当前文档内容8. Ctrl + F:在当前文档中查找指定内容9. Ctrl + H:在当前文档中替换指定内容10. Ctrl + G:定位到指定行数的位置11. Ctrl + Tab:切换当前打开的文件12. Ctrl + Shift + Tab:反向切换当前打开的文件二、集成开发环境(IDE)的快捷键1. Ctrl + N:新建文件/项目2. Ctrl + O:打开文件/项目3. Ctrl + S:保存当前文件/项目4. Ctrl + Shift + S:另存为当前文件/项目5. Ctrl + Z:撤销上一步操作6. Ctrl + Y:恢复上一步撤销的操作7. Ctrl + X:剪切选中的内容8. Ctrl + C:复制选中的内容9. Ctrl + V:粘贴剪切/复制的内容10. Ctrl + A:全选当前文件/项目11. Ctrl + F:在当前文件/项目中查找指定内容12. Ctrl + R:替换当前文件/项目中指定内容13. Ctrl + B:跳转到定义处14. Ctrl + /:注释选中的代码15. Ctrl + Shift + F:在当前文件/项目中进行格式化三、版本控制工具的快捷键1. Ctrl + Shift + N:新建分支2. Ctrl + Shift + C:提交当前修改3. Ctrl + Shift + P:推送当前分支4. Ctrl + Shift + U:更新当前分支5. Ctrl + Shift + M:合并分支6. Ctrl + Shift + D:查看当前分支的差异7. Ctrl + Shift + H:查看历史记录8. Ctrl + Shift + B:切换分支四、调试器的快捷键1. F5:启动调试2. F10:逐过程执行3. F11:逐语句执行4. Shift + F11:从当前函数中跳出5. F9:在当前行设置断点6. F8:跳转到下一个断点7. Shift + F8:从当前函数中移除断点五、命令行工具的快捷键1. Ctrl + C:终止当前执行的命令2. Ctrl + D:退出当前命令行工具3. Tab:自动补全命令和路径4. 上箭头:查看之前执行的命令5. Ctrl + R:搜索之前执行的命令历史记录六、其他常用工具的快捷键1. Alt + Tab:在不同的应用程序之间切换2. Ctrl + Shift + Esc:打开任务管理器3. Win + D:显示桌面4. Win + E:打开资源管理器5. Alt + F4:关闭当前窗口总结:快捷键对程序员来说是非常重要的工具,它可以提高开发效率,减少操作时间,让程序员更加专注于代码的编写和调试。
Java常用快捷键
Java常⽤快捷键常⽤快捷键•万能键:ALT+ENTER•运⾏当前⽂件:CTRL+SHIFT+F10•运⾏上次:SHIFT+F10•以DEBUG模式运⾏上次:SHIFT+F9•选择运⾏:ALT+SHIFT+F10•选择以DEBUG模式运⾏:ALT+SHIFT+F9•搜索全部:双击SHITF•运⾏全部:双击CTRL•搜索:CTRL+F•替换:CTRL+R•在⽂件中查找:CTRL+SHIFT+F•在⽂件中搜索并替换:CTRL+SHIFT+R•重命名:SHIFT+F6•新增⽂件:ALT+F=>N=>选择你想要新增的⽂件•切换标签页:ALT+LEFT/RIGHT•关闭标签页:CTRL+F4•代码补全:CTRL+SHIFT+ENTER•定位错误:SHIFT+F2•查看结构:CTRL+F12•格式化代码:CTRL+ALT+L【调整代码样式设置】•优化导包:CTRL+ALT+O【编辑器=>常规=>⾃动导⼊=>及时优化导⼊】•重新格式化代码:CTRL+ALT+Shift+L•打开选项:CTRL+ALT+S•主菜单=>⽂件=>打开项⽬结构:CTRL+ALT+SHIFT+S(个⼈改成了CTRL+SHIFT+S)•主菜单=>编辑=>重做:CTRL+SHIFT+Z(个⼈改成了CTRL+Y)•主菜单=>代码=>环绕⽅式:CTRL+ALT+T(个⼈改成了ALT+T)•主菜单=>重构=>提取/引⼊=>提取⽅法:CTRL+ALT+M(个⼈改成了ALT+M)•跳转到上/下⼀个⽅法:ALT+UP/DOWN•跳转到⽅法/类的左括号/右括号:CTRL+[或者CTRL+]•跳转到定义/使⽤位置:CTRL+B•跳转到定义/实现:CTRL+ALT+B•跳转到使⽤位置,源码可⽤:CTRL+ALT+F7•⽣成:shift+insert•创建⽅法时参数顺序:CTRL+SHIFT+LEFT/RIGHT•移动代码/⽅法顺序:CTRL+SHIFT+UP/DOWN•移动单⾏代码顺序:ALT+SHIFT+UP/DOWN•进⼊项⽬⽬录视图:ALT+1•进⼊当前⽂件对应的项⽬⽬录视图:ALT+F1•切换视图:CTRL+TAB或者CTRL+SHIFT+TAB•添加书签:CTRL+SHIFT+0~9•跳转到书签:CTRL+0~9•跳转到指定⾏/列:CTRL+G摘⾃:https:///s/Y8lIfF1EWXtT6ITu3gK7lw。
快捷键助你快速搜索和替换文本
快捷键助你快速搜索和替换文本在数字化时代,我们经常需要处理大量的文字内容。
无论是在办公室写报告还是在学校写论文,我们都需要快速而准确地搜索和替换文本。
幸运的是,现代技术为我们提供了快捷键的方式,能够帮助我们更高效地进行这些操作。
本文将介绍一些常用的快捷键,以助你快速搜索和替换文本。
一、搜索文本的快捷键1. Ctrl + F:这是最常用的快捷键之一。
在大多数软件中,按下Ctrl + F后,会出现一个搜索框,你可以在其中输入你要查找的关键词。
按下回车键后,软件会自动定位到第一个匹配到的结果,并将其突出显示。
你可以通过多次按下Enter键,依次查找后续的匹配结果。
2. Ctrl + G:这个快捷键主要用于查找下一个匹配结果。
当你搜索到第一个结果后,按下Ctrl + G,软件会自动跳转到下一个匹配结果,以此类推。
3. Ctrl + Shift + G:与Ctrl + G相反,这个快捷键用于查找上一个匹配结果。
当你需要回退到前一个匹配结果时,可以按下Ctrl + Shift + G。
二、替换文本的快捷键1. Ctrl + H:当你需要替换文本时,按下Ctrl + H,会弹出一个替换框。
你可以在该框中输入要查找的文本以及要替换成的文本。
按下回车键后,软件会自动替换当前匹配的结果,并跳转到下一个匹配结果。
你可以选择继续替换,或者按下Esc键结束替换。
2. Ctrl + Shift + H:当你需要替换所有匹配结果时,可以按下Ctrl + Shift + H。
这个快捷键会将所有匹配结果都替换成你指定的文本。
三、其他常用的快捷键除了上述的搜索和替换快捷键外,还有一些常用的快捷键,能够提高你在处理文本时的效率。
1. Ctrl + A:这个快捷键用于全选文本。
当你需要对整个文本进行操作时,可以按下Ctrl + A,将整篇文本选中。
2. Ctrl + C 和 Ctrl + V:这两个快捷键分别用于复制和粘贴文本。
当你需要复制一段文本或者将复制的文本粘贴到其他位置时,可以使用这两个快捷键。
java简单记事本
Java简易记事本编写课题:设计一个简单的Windows记事本,可以实现以下功能1、文件的新建、打开、保存、另存为和退出;2、对文件的编辑,如复制、粘贴、剪切、替换等;3、执行完操作后,能够顺利关闭记事本。
源码:package MyPad;import java.awt.Event;import java.awt.FlowLayout;import java.awt.event.KeyEvent;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.io.BufferedOutputStream;import java.io.BufferedReader;import java.io.File;import java.io.FileOutputStream;import java.io.FileReader;import java.io.IOException;import javax.swing.JButton;import javax.swing.JFileChooser;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JOptionPane;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.JTextField;import javax.swing.KeyStroke;public class MyPad {static String path = "";public static void main(String[] args) {// 设置主窗体JFrame jf = new JFrame("MyPad");jf.setBounds(220, 90, 800, 600);jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);final JFrame frame = new JFrame("替换");frame.setBounds(220, 90, 300, 250);JLabel l1 = new JLabel(" 原字符串");frame.add(l1);final JTextField tf1 = new JTextField();tf1.setColumns(15);frame.add(tf1);JLabel l2 = new JLabel(" 替换为");final JTextField tf2 = new JTextField();tf2.setColumns(15);JButton button = new JButton("确定");frame.setLayout(new FlowLayout());frame.add(l2);frame.add(tf2);frame.add(button);// 设置菜单栏JMenuBar jmbar = new JMenuBar();jf.setJMenuBar(jmbar);// ===============设置文件菜单===================== JMenu filemenu = new JMenu("文件(F)");JMenuItem newitem = new JMenuItem("新建(N)"); JMenuItem openitem = new JMenuItem("打开(O)");// openitem.setMnemonic('O');JMenuItem saveitem = new JMenuItem("保存(S)"); JMenuItem lsaveitem = new JMenuItem("另存为(A)"); JMenuItem exititem = new JMenuItem("退出(X)"); jmbar.add(filemenu);filemenu.add(newitem);filemenu.add(openitem);filemenu.add(saveitem);filemenu.add(lsaveitem);filemenu.addSeparator();filemenu.add(exititem);// ===============设置编辑菜单===================== JMenu editmenu = new JMenu("编辑(E)");JMenuItem cutitem = new JMenuItem("剪切(T)"); JMenuItem copyitem = new JMenuItem("复制(C)"); JMenuItem pasteitem = new JMenuItem("粘贴(P)"); JMenuItem replaceitem = new JMenuItem("替换(R)"); jmbar.add(editmenu);editmenu.add(cutitem);editmenu.add(copyitem);editmenu.add(pasteitem);editmenu.add(replaceitem);// ===============设置帮助菜单=====================JMenu helpmenu = new JMenu("帮助(H)");JMenuItem helpitem = new JMenuItem("MyPad说明(A)");jmbar.add(helpmenu);helpmenu.add(helpitem);final JTextArea text = new JTextArea();JScrollPane jsp = new JScrollPane(text);jf.add(jsp);jf.setVisible(true);// ===============设置快捷键=====================newitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N, Event.CTRL_MASK));openitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, Event.CTRL_MASK));saveitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, Event.CTRL_MASK));cutitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, Event.CTRL_MASK));copyitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, Event.CTRL_MASK));pasteitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, Event.CTRL_MASK));replaceitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_H, Event.CTRL_MASK));// ===============实现新建功能=====================newitem.addMouseListener(new MouseAdapter() {@Overridepublic void mouseReleased(MouseEvent e) {if (text.getText().equals(""))text.setText("");else {int value = JOptionPane.showConfirmDialog(null, "是否要保存文本?","提示", JOptionPane.YES_NO_OPTION);String text_ = text.getText();if (value == JOptionPane.YES_OPTION)try {lsave(text_);} catch (IOException e1) {e1.printStackTrace();}text.setText("");}}});// ===============实现打开功能=====================openitem.addMouseListener(new MouseAdapter() {@Overridepublic void mouseReleased(MouseEvent e) {if (text.getText().equals(""))nw(text);else {int value = JOptionPane.showConfirmDialog(null, "是否要保存文本?","提示", JOptionPane.YES_NO_OPTION);String text_ = text.getText();if (value == JOptionPane.YES_OPTION)try {lsave(text_);} catch (IOException e1) {e1.printStackTrace();}else if (value == JOptionPane.NO_OPTION)text.setText("");elsereturn;nw(text);}}});// ===============实现保存功能=====================saveitem.addMouseListener(new MouseAdapter() {@Overridepublic void mouseReleased(MouseEvent e) {String text_ = text.getText();try {save(text_);} catch (IOException e1) {e1.printStackTrace();}}});// ===============实现另存为功能=====================lsaveitem.addMouseListener(new MouseAdapter() {@Overridepublic void mouseReleased(MouseEvent e) {String text_ = text.getText();try {lsave(text_);} catch (IOException e1) {e1.printStackTrace();}}});// ===============实现退出功能=====================exititem.addMouseListener(new MouseAdapter() {@Overridepublic void mouseReleased(MouseEvent e) {if (text.getText().equals(""))System.exit(0);else {int value = JOptionPane.showConfirmDialog(null, "是否要保存文本?","提示", JOptionPane.YES_NO_OPTION);String text_ = text.getText();if (value == JOptionPane.YES_OPTION)try {lsave(text_);} catch (IOException e1) {e1.printStackTrace();}System.exit(0);}}});// ===============实现剪切功能===================== cutitem.addMouseListener(new MouseAdapter() {@Overridepublic void mouseReleased(MouseEvent e) { text.cut();}});// ===============实现复制功能===================== copyitem.addMouseListener(new MouseAdapter() { @Overridepublic void mouseReleased(MouseEvent e) { text.copy();}});// ===============实现粘贴功能===================== pasteitem.addMouseListener(new MouseAdapter() { @Overridepublic void mouseReleased(MouseEvent e) { text.paste();}});// ===============实现替换功能===================== replaceitem.addMouseListener(new MouseAdapter() {@Overridepublic void mouseReleased(MouseEvent e) { frame.setVisible(true);}});button.addMouseListener(new MouseAdapter() {@Overridepublic void mouseReleased(MouseEvent e) {String reptext =text.getText().replaceAll(tf1.getText(),tf2.getText());text.setText("");text.append(reptext);}});// ===============实现MyPad说明功能================helpitem.addMouseListener(new MouseAdapter() {@Overridepublic void mouseReleased(MouseEvent e) {JOptionPane.showOptionDialog(null, "程序名称:\n MyPad \n"+ "程序设计:\n Java课程设计 \n" + "简介:\n 一个简单的文字编辑器\n"+ " 制作: 软件工程小Y\n" + "联系方式:******@","关于MyPad", JOptionPane.DEFAULT_OPTION,RMATION_MESSAGE, null, null, null);}});}// Mainpublic static void openfile(File file, JTextArea text) throws IOException {BufferedReader bufr = new BufferedReader(new FileReader(file));String line = null;while ((line = bufr.readLine()) != null) {text.append(line);text.append("\r\n");}bufr.close();}public static void nw(JTextArea text) {JFileChooser chooser = new JFileChooser();if (chooser.showOpenDialog(chooser) ==JFileChooser.APPROVE_OPTION) {String path = chooser.getSelectedFile().getAbsolutePath();File file = new File(path);try {openfile(file, text);} catch (IOException e1) {e1.printStackTrace();}}}public static void lsave(String text) throws IOException { JFileChooser chooser = new JFileChooser();File file = null;if (chooser.showSaveDialog(chooser) ==JFileChooser.APPROVE_OPTION) {{path = chooser.getSelectedFile().getAbsolutePath();file = new File(path);savefile(file, text);}}}public static void save(String text) throws IOException {JFileChooser chooser = new JFileChooser();File file = null;if (path.equals("")) {if (chooser.showSaveDialog(chooser) ==JFileChooser.APPROVE_OPTION) {path = chooser.getSelectedFile().getAbsolutePath();} elsereturn;}file = new File(path);savefile(file, text);}public static void savefile(File file, String text) throws IOException {byte[] b = text.getBytes();if (file != null) {BufferedOutputStream bufw = new BufferedOutputStream( new FileOutputStream(file));bufw.write(b, 0, b.length);bufw.close();}}}。
JAVA快捷键方法
JAVA快捷键方法1.自动补全:当您输入代码时,您可以按Ctrl +空格键来调出代码自动补全选项。
这可以帮助您更快地输入代码,并减少输入错误。
2.导入类:当您需要使用一个类时,您可以使用Ctrl + Shift + O 快捷键来自动导入缺少的类。
这可以减少手动导入类的时间和精力。
3.格式化代码:使用Ctrl + Shift + F可以格式化代码,使其具有一致的缩进,并根据编程风格指南进行排列。
这样可以使代码更易读,并且更易于维护。
4.注释代码:您可以使用Ctrl + /来注释选定的代码行或块。
这对于添加临时注释或快速注释代码是非常有用的。
5.快速跳转:使用Ctrl + Shift + T可以快速打开类的继承层次结构,并快速找到定义或重写方法的地方。
6.代码折叠:使用Ctrl + +和Ctrl + -可以展开和折叠代码块,这使得查看代码更加方便。
您可以使用Ctrl + Shift + +和Ctrl + Shift + -展开和折叠所有代码块。
7.查找和替换:使用Ctrl + F可以在当前文件中查找文本,并使用Ctrl + Shift + F在整个项目中查找文本。
使用Ctrl + H可以查找并替换文本。
8.运行和调试:使用Ctrl + F11可以运行当前项目。
使用F6可以逐语句运行代码,并使用F8可以在断点之间跳转。
9.快速文档:使用Ctrl + Q可以显示当前光标所在的类或方法的快速文档。
这可以帮助您更快地了解代码的功能和使用方法。
10.生成代码:使用Alt + Insert可以生成代码,包括构造函数,getter和setter方法等。
这可以减少手动编写大量重复的代码的时间和努力。
11.重命名:使用Shift + F6可以重命名选定的变量,方法或类。
这将自动更新所有使用该标识符的地方,以确保代码的一致性。
12.运行单元测试:使用Ctrl + Shift + F10可以运行当前单元测试类。
这将自动运行您的测试,以确保代码的正确性。
JAVA快捷键方法
JAVA快捷键方法JAVA是一种非常流行的编程语言,它有很多强大的功能和特性。
为了更高效地使用JAVA编程,我们可以利用一些快捷键和技巧来提高我们的生产力。
以下是一些常用的JAVA快捷键和方法:1.定义代码块:- main方法:在类中输入"main",然后按下Tab键,即可自动生成主函数的定义代码块。
- 代码块:在类中输入"{}",然后按下Tab键,即可生成一个空的代码块。
2.自动补全:- 关键字:在输入代码的过程中,可以按下Ctrl+Space键来自动补全关键字。
- 方法名:在输入类或对象的方法名时,可以按下Ctrl+Space键来自动补全方法名。
- 变量名:在输入变量名时,可以按下Ctrl+Space键来自动补全已声明的变量名。
3.快速导入:- 类的导入:在输入需要导入的类名时,可以按下Ctrl+Shift+O键自动导入该类。
- 静态导入:在输入需要导入的静态成员时,可以按下Ctrl+Shift+M键自动导入静态成员。
4.代码格式化:- 代码块格式化:选择一段代码,然后按下Ctrl+Shift+F键,可以自动对代码进行格式化,使其具有良好的可读性。
- 成员变量的定义:选择一段成员变量的定义代码,然后按下Ctrl+Alt+F键,可以自动将其转换为成员变量的定义形式。
5.快速跳转:- 定义处:在使用类或对象时,按住Ctrl键并点击该类或对象的名称,可以快速跳转到该类或对象的定义处。
- 实现处/调用处:在使用接口或方法时,按住Ctrl键并点击接口或方法的名称,可以快速跳转到该接口或方法的实现或调用处。
6.自动修正:- 拼写错误:在输入时,如果发现拼写错误,可以按下Ctrl+1键,然后选择正确的拼写方式来进行修正。
- 引入包:在输入类名时,如果该类没有导入,可以按下Ctrl+1键,然后选择自动导入该类的方式。
7.代码生成:- 重写方法:在实现接口或继承父类时,可以按下Ctrl+O键,然后选择需要重写的方法,即可自动生成该方法的定义代码块。
JAVA--简单记事本源代码
JAVA--简单记事本源代码import javax.swing.JFrame;import javax.swing.JTextArea;import java.awt.*;import java.awt.event.*;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.FileWriter;import javax.swing.*;import javax.swing.plaf.FileChooserUI;public class notepad extends JFrame implements ActionListener{//定义所需要的组件JTextArea jta=null;JMenuBar jmb=null;JMenu jm=null;JMenuItem jmi1=null;JMenuItem jmi2=null;public static void main(String[]args){new notepad();}public notepad(){//把组件添加到窗体上jta=new JTextArea();jmb=new JMenuBar();this.add(jta);this.setJMenuBar(jmb);//设置窗体属性this.setTitle("简易记事本");this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setSize(400, 300);this.setVisible(true);//把菜单添加进菜单条jm=new JMenu("⽂件");jm.setMnemonic('f');jmb.add(jm);//把⼦菜单加⼊⾄菜单jmi1=new JMenuItem("打开");jmi2=new JMenuItem("保存");jmi1.setActionCommand("open");jmi2.setActionCommand("save");jm.add(jmi1);jm.add(jmi2);//为两个字菜单注册事件监听jmi1.addActionListener(this);jmi2.addActionListener(this);}public void actionPerformed(ActionEvent e){//对点击了打开进⾏处理if(e.getActionCommand().equals("open")){//创建⼀个⽂件选择组件JFileChooser jfc1=new JFileChooser();//设置⽂件选择器的名字jfc1.setDialogTitle("请选择⽂件....");//设置⽂件选择组件的类型(打开类型)jfc1.showOpenDialog(null);//显⽰该组件jfc1.setVisible(true);//获取选择⽂件的绝对路径String s;s=jfc1.getSelectedFile().getAbsolutePath();//将该⽂件显⽰到记事本上BufferedReader br=null;FileReader fr=null;try{//创建⼀个带缓冲的⽂件读取对象fr=new FileReader(s);br=new BufferedReader(fr);String text="";String m=null;//循环读取⽂件while((m=br.readLine())!=null){text+=m+"\r\n";}//将读取的结果打印到记事本上⾯this.jta.setText(text);}catch(Exception e1){e1.printStackTrace();}finally{//关掉打开的⽂件try{br.close();fr.close();}catch(Exception e2){e2.printStackTrace();}}}else if(e.getActionCommand().equals("save")){//创建⼀个⽂件选择组件JFileChooser jfc=new JFileChooser();//设置⽂件选择的名称jfc.setDialogTitle("另存为");//设置⽂件选择组件的类型(保存类型)jfc.showSaveDialog(null);//显⽰该组件jfc.setVisible(true);//获取选择⽂件的绝对路径String filename;filename=jfc.getSelectedFile().getAbsolutePath(); //将记事本内的⽂本保存⾄该路径BufferedWriter bw=null;FileWriter fw=null;try{//创建⽂件输出⽂件fw=new FileWriter(filename);bw=new BufferedWriter(fw);//获取⽂本String outtext="";outtext=this.jta.getText();//输出⽂本fw.write(outtext);}catch(Exception e2){e2.printStackTrace();}finally{//关闭打开的输出⽂件try{bw.close();fw.close();}catch(Exception e3){e3.printStackTrace();}}}}}。
编写一个记事本程序
南京晓庄学院
面向对象课程设计报告题目编写一个记事本程序
所在院系
学生姓名专业
班级学号
指导教师
年月日
一.总体设计
说明系统功能,介绍系统的文件结构。
1.利用图例说明类的设计。
2.利用表格说明java源文件及其功能。
二、详细设计
详细阐述系统设计思路和过程。
1.类
(1)成员变量见表2
(2)方法见表2-2
(3)源代码见文件***.java 省略。
三.运行效果
1、保存文件
2、复制
3、粘贴
4、剪切
四.实验小结
通过这次设计,我对Java程序设计相关知识有了进一步的理解和学习,使我把平时掌握的java语言基本知识应用于实践中,在实际操作中加深对Java语言的理解。
但在此次实验中,在记事本上的一些功能实现上还存在着很多不足,比如要对文字的查找和替换时,要先选中文字后,才可以进行操作。
此次的实验,让我体会到Java编程在实际生活中应用的广泛与实用性,同时让我也复习了前面所学知识的同时发现在学习中的欠缺与不足,因而使我在今后的
学习中要更加努力。
快速查找和替换文本的方法
快速查找和替换文本的方法有很多种,以下列举几种常用的方法:
1. 使用快捷键查找和替换:在大多数文本编辑器和处理软件中,可以通过按下Ctrl + F 或Cmd + F 快捷键打开查找功能,输入需要查找的文本后,再按下Ctrl + R 或Cmd + R 快捷键打开替换功能,输入需要替换的文本即可。
2. 使用正则表达式查找和替换:正则表达式是一种通用的匹配模式,可以用来查找和替换文本中的特定模式。
在支持正则表达式的文本编辑器或处理软件中,可以通过在查找和替换功能中输入正则表达式来实现快速查找和替换。
3. 使用批量处理工具:如果需要在多个文本文件中查找和替换特定文本,可以使用批量处理工具来批量处理这些文件。
常用的批量处理工具有PowerShell、sed、awk 等。
4. 使用文本编辑器的高级查找和替换功能:一些文本编辑器和处理软件提供了高级的查找和替换功能,例如Notepad++、Sublime Text、Visual Studio Code 等。
这些软件提供了更多的选项和功能,可以更精确地查找和替换文本。
Java快捷键汇总
导入包:Ctrl+Shift+O编辑作用域功能快捷键全局查找并替换Ctrl+F文本编辑器查找上一个Ctrl+Shift+K文本编辑器查找下一个Ctrl+K全局撤销Ctrl+Z全局复制Ctrl+C全局恢复上一个选择Alt+Shift+↓全局剪切Ctrl+X全局快速修正Ctrl1+1全局内容辅助Alt+/全局全部选中Ctrl+A全局删除Delete全局上下文信息Alt+?Alt+Shift+?Ctrl+Shift+SpaceJava编辑器显示工具提示描述F2Java编辑器选择封装元素Alt+Shift+↑Java编辑器选择上一个元素Alt+Shift+←Java编辑器选择下一个元素Alt+Shift+→文本编辑器增量查找Ctrl+J文本编辑器增量逆向查找Ctrl+Shift+J全局粘贴Ctrl+V全局重做Ctrl+Y查看作用域功能快捷键全局放大Ctrl+=全局缩小Ctrl+-窗口作用域功能快捷键全局激活编辑器F12全局切换编辑器Ctrl+Shift+W全局上一个编辑器Ctrl+Shift+F6全局上一个视图Ctrl+Shift+F7全局上一个透视图Ctrl+Shift+F8全局下一个编辑器Ctrl+F6全局下一个视图Ctrl+F7全局下一个透视图Ctrl+F8文本编辑器显示标尺上下文菜单Ctrl+W 全局显示视图菜单Ctrl+F10全局显示系统菜单Alt+-导航作用域功能快捷键Java编辑器打开结构Ctrl+F3全局打开类型Ctrl+Shift+T全局打开类型层次结构F4全局打开声明F3全局打开外部javadoc Shift+F2全局打开资源Ctrl+Shift+R全局后退历史记录Alt+←全局前进历史记录Alt+→全局上一个Ctrl+,全局下一个Ctrl+.Java编辑器显示大纲Ctrl+O全局在层次结构中打开类型Ctrl+Shift+H 全局转至匹配的括号Ctrl+Shift+P全局转至上一个编辑位置Ctrl+QJava编辑器转至上一个成员Ctrl+Shift+↑Java编辑器转至下一个成员Ctrl+Shift+↓文本编辑器转至行Ctrl+L搜索作用域功能快捷键全局出现在文件中Ctrl+Shift+U全局打开搜索对话框Ctrl+H全局工作区中的声明Ctrl+G全局工作区中的引用Ctrl+Shift+G文本编辑作用域功能快捷键文本编辑器改写切换Insert文本编辑器上滚行Ctrl+↑文本编辑器下滚行Ctrl+↓作用域功能快捷键全局保存Ctrl+XCtrl+S全局打印Ctrl+P全局关闭Ctrl+F4全局全部保存Ctrl+Shift+S全局全部关闭Ctrl+Shift+F4全局属性Alt+Enter全局新建Ctrl+N项目作用域功能快捷键全局全部构建Ctrl+B源代码作用域功能快捷键Java编辑器格式化Ctrl+Shift+FJava编辑器取消注释Ctrl+/Java编辑器注释Ctrl+/Java编辑器添加单个import Ctrl+Shift+MJava编辑器组织多个import Ctrl+Shift+OJava编辑器使用try/catch块来包围未设置,太常用了,所以在这里列出,建议自己设置。
java记事本源代码
JMenuItem m13=new JMenuItem("另保存为 ");
m13.addActionListener(this);
JMenuItem m14=new JMenuItem("退出 ");
m14.addActionListener(this);
{
myfr fr=new myfr("JAVA记事本");
fr.setSize(560,395);
}
}
///////////////////////////myfr主窗体类//////////////////////////////////////
class myfr extends JFrame implements ActionListener
JTextArea txt1; //主输入文本区
File newfiles;
JPopupMenu popm; //弹出菜单声明
//JMenu m1,m2,m3,m4,m5,m6; //各菜单项
JMenu m1, m2, m3;
JMenuItem m26,m271,m34,p_copy,p_cut,p_paste,p_del;
replb.addActionListener(this);
mainpane=(JPanel)this.getContentPane();
mainpane.setLayout(new BorderLayout());
txt1=new JTextArea("",13,61);
m21.setAccelerator(keycopy);
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
这是一个简易记事本,仿制windows记事本的,包括文件(新建,打开,保存,另存为,退出),编辑(查找,替换),格式(换行,字体颜色),帮助,在文本框点击鼠标右键,显示撤销,复制,剪切,粘贴,全选等功能,另外还添加了部分快捷键功能,由于做的功能不全,可能会有些缺点,请大家批评指正package lwz;import java.awt.Button;import java.awt.Color;import ponent;import java.awt.Dialog;import java.awt.Event;import java.awt.Font;import java.awt.Frame;import java.awt.GraphicsEnvironment;import bel;import java.awt.TextArea;import java.awt.TextField;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyEvent;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.awt.event.WindowListener;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JCheckBox;import javax.swing.JColorChooser;import javax.swing.JComboBox;import javax.swing.JFileChooser;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPopupMenu;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.JTextField;import javax.swing.KeyStroke;import javax.swing.SwingUtilities;import javax.swing.UIManager;import javax.swing.WindowConstants;import javax.swing.undo.UndoManager;import lwz2.FontSlectDemo;import youts.Bilateral; import youts.Constraints; import youts.GroupLayout;//VS4E -- DO NOT REMOVE THIS LINE!public class 记事本 extends JFrame {private static final long serialVersionUID = 1L;private JMenuItem jMenuItem0;private JMenuItem jMenuItem1;private JMenuItem jMenuItem2;private JMenuItem jMenuItem3;private JMenuItem jMenuItem4;private JMenu jMenu0;private JMenuItem jMenuItem5;private JMenuItem jMenuItem6;private JMenuItem jMenuItem7;private JMenuItem jMenuItem8;private JMenuItem jMenuItem9;private JMenuItem jMenuItem10;private JMenuItem jMenuItem11;private JMenu jMenu1;private JMenuItem jMenuItem12;private JMenuItem jMenuItem13;private JMenu jMenu2;private JMenuItem jMenuItem14;private JMenu jMenu3;private JMenuBar jMenuBar0;private JTextArea jTextArea0;private JScrollPane jScrollPane0;private static final String PREFERRED_LOOK_AND_FEEL = "javax.swing.plaf.metal.MetalLookAndFeel";private static boolean flag = false; // 判断是否保存JTextField findtxt,findtxt1,repltxt; //find为查找对话框的输入文本区,replace对话框的输入文本区Dialog find,replace,typeface; //find为查找对话框,replace对话框String str,strnext,fname=null,path;int startp,endp,nexttemp,newstartp,newendp;private JPopupMenu text=new JPopupMenu();JButton replb=new JButton();JFrame frame=new JFrame();UndoManager um = new UndoManager();File newfiles;JFileChooser choose = new JFileChooser(); //文件对话框public 记事本() {initComponents();text.add(jMenuItem5);text.add(jMenuItem6);text.add(jMenuItem7);text.add(jMenuItem8);text.add(jMenuItem9);jTextArea0.add(text);//注册监听jTextArea0.getDocument().addUndoableEditListener(um);NewListener n = new NewListener();jMenuItem0.addActionListener(n);ImageIcon newfile = new ImageIcon("C:/Documents and Settings/user/桌面/Myjava4/images/snew.gif");//添加按钮图标jMenuItem0.setIcon(newfile);KeyStrokekeynew=KeyStroke.getKeyStroke(KeyEvent.VK_N,Event.CTRL_MASK); //定义快捷键 jMenuItem0.setAccelerator(keynew);OpenListener o=new OpenListener();jMenuItem1.addActionListener(o);ImageIcon openfile = new ImageIcon("C:/Documents and Settings/user/桌面/Myjava4/images/sopen.GIF");jMenuItem1.setIcon(openfile);KeyStrokekeyopen=KeyStroke.getKeyStroke(KeyEvent.VK_O,Event.CTRL_MASK); //定义快捷键 jMenuItem1.setAccelerator(keyopen);SaveListener s = new SaveListener();jMenuItem2.addActionListener(s);ImageIcon savea = new ImageIcon("C:/Documents and Settings/user/桌面/Myjava4/images/ssave.gif");jMenuItem2.setIcon(savea);KeyStrokekeysave=KeyStroke.getKeyStroke(KeyEvent.VK_S,Event.CTRL_MASK); //定义快捷键 jMenuItem2.setAccelerator(keysave);SaveToListener s1 = new SaveToListener();jMenuItem3.addActionListener(s1);ImageIcon saveb = new ImageIcon("C:/Documents and Settings/user/桌面/Myjava4/images/ssave.gif");jMenuItem3.setIcon(saveb);KeyStrokekeysave1=KeyStroke.getKeyStroke(KeyEvent.VK_A,Event.CTRL_MASK); //定义快捷键 jMenuItem3.setAccelerator(keysave1);ExitListener e = new ExitListener();jMenuItem4.addActionListener(e);ImageIcon exit = new ImageIcon("C:/Documents and Settings/user/桌面/Myjava4/images/sexit.gif");jMenuItem4.setIcon(exit);KeyStrokekeyexit=KeyStroke.getKeyStroke(KeyEvent.VK_X,Event.CTRL_MASK); //定义快捷键 jMenuItem4.setAccelerator(keyexit);RevokeListener r=new RevokeListener();jMenuItem5.addActionListener(r);KeyStrokekeyrevoke=KeyStroke.getKeyStroke(KeyEvent.VK_Z,Event.CTRL_MASK); //定义快捷键jMenuItem5.setAccelerator(keyrevoke);CutListener c = new CutListener();jMenuItem6.addActionListener(c);ImageIcon cut = new ImageIcon("C:/Documents and Settings/user/桌面/Myjava4/images/scut.gif");jMenuItem6.setIcon(cut);KeyStrokekeycut=KeyStroke.getKeyStroke(KeyEvent.VK_X,Event.CTRL_MASK);jMenuItem6.setAccelerator(keycut);CopyListener c1 = new CopyListener();jMenuItem7.addActionListener(c1);ImageIcon copy = new ImageIcon("images/scopy.gif");jMenuItem7.setIcon(copy);KeyStrokekeycopy=KeyStroke.getKeyStroke(KeyEvent.VK_C,Event.CTRL_MASK);jMenuItem7.setAccelerator(keycopy);PasteListener p = new PasteListener();jMenuItem8.addActionListener(p);ImageIcon paste = new ImageIcon("C:/Documents and Settings/user/桌面/Myjava4/images/spaste.gif");jMenuItem8.setIcon(paste);KeyStrokekeypaste=KeyStroke.getKeyStroke(KeyEvent.VK_V,Event.CTRL_MASK);jMenuItem8.setAccelerator(keypaste);SelectAllListener s2=new SelectAllListener();jMenuItem9.addActionListener(s2);KeyStrokekeyselectall=KeyStroke.getKeyStroke(KeyEvent.VK_A,Event.CTRL_MASK);jMenuItem9.setAccelerator(keyselectall);ReplacementListener r1=new ReplacementListener();jMenuItem10.addActionListener(r1);KeyStrokekeyreplace=KeyStroke.getKeyStroke(KeyEvent.VK_H,Event.CTRL_MASK);jMenuItem10.setAccelerator(keyreplace);SearchListener s3=new SearchListener();jMenuItem11.addActionListener(s3);KeyStrokekeysearch=KeyStroke.getKeyStroke(KeyEvent.VK_F,Event.CTRL_MASK);jMenuItem11.setAccelerator(keysearch);WrapListener w=new WrapListener();jMenuItem12.addActionListener(w);TypefaceListener t=new TypefaceListener();jMenuItem13.addActionListener(t);AboutListener a=new AboutListener();jMenuItem14.addActionListener(a);ImageIcon about = new ImageIcon("C:/Documents and Settings/user/桌面/Myjava4/images/sabout.gif");jMenuItem14.setIcon(about);jTextArea0.addMouseListener(new handlemouse(this));//注册鼠标右击事件jTextArea0.setFont(new Font("宋体",Font.PLAIN,30));}//处理右键弹出菜单类class handlemouse extends MouseAdapter{记事本 note;handlemouse(记事本 note1){note=note1;}public void mouseReleased(MouseEvent n){if(n.isPopupTrigger())note.text.show((Component)n.getSource(),n.getX(),n.getY());}}//撤销private class RevokeListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubjMenuItem4.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z, ActionEvent.CTRL_MASK ));if (um.canUndo()) {um.undo();}}}//字体private class TypefaceListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stub// new 字体();JColorChooser jColor=new JColorChooser(); //调用颜色面板,设置前景就可更改字体颜色Color fcolor=jTextArea0.getForeground();jTextArea0.setForeground( jColor.showDialog(jTextArea0,"选择字体颜色",fcolor));}}//换行private class WrapListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubjTextArea0.setLineWrap(true);//激活自动换行功能jTextArea0.setWrapStyleWord(true);//激活断行不断字功能jMenuItem12.setEnabled(false);}}//查找class SearchListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stub// 创建查找对话框;find=new Dialog(frame, "查找");JPanel p1=new JPanel();JPanel p2=new JPanel();findtxt1=new JTextField(7);JButton findenter=new JButton("查找");JButton find1=new JButton("查找下一个");JButton Quxiao=new JButton("取消");p1.add(new JLabel("输入要查找字符:"));p1.add(findtxt1);p2.add(findenter);p2.add(find1);p2.add(Quxiao);FindListener f=new FindListener();findenter.addActionListener(f);FindNextListener f1=new FindNextListener();find1.addActionListener(f1);// KeyStroke keyfind=KeyStroke.getKeyStroke(KeyEvent.VK_F3,0);// find1.setAccelerator(keyfind);QuxiaoListener q=new QuxiaoListener();Quxiao.addActionListener(q);find.add("Center",p1);find.add("South",p2);find.setSize(300,200);find.show();}}//查找下一个private class FindNextListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubif(findtxt1.getText().equals("")){ JOptionPane.showMessageDialog(jMenu0, "请输入要查找的内容");}else if(!findtxt1.getText().equals("")){nexttemp=newendp; /////获取上次查找的终点做为未查找字符串的起点String strall=jTextArea0.getText();jTextArea0.select(nexttemp,strall.length()); /////选中所有未查找的字符串strnext=jTextArea0.getSelectedText();newstartp=strnext.indexOf(findtxt1.getText())+nexttemp;/////在未查找的字符串里搜索对应字符的在TXT1中的位置newendp=newstartp+findtxt1.getText().length();jTextArea0.select(newstartp,newendp); ////找到相应文本,并选择notfindmethod1();}}}//取消private class QuxiaoListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubfind.dispose();}}//查找private class FindListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubif(findtxt1.getText().equals("")){ JOptionPane.showMessageDialog(jMenu0, "请输入要查找的内容");}else if(!findtxt1.getText().equals("")){// JOptionPane.showMessageDialog(jMenu1, "正在查找");str=jTextArea0.getText();startp=str.indexOf(findtxt1.getText());endp=startp+findtxt1.getText().length();jTextArea0.select(startp,endp);newendp=endp;////////获取这次查找的终点notfindmethod1();}}}//替换class ReplacementListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubreplace=new Dialog(frame, "替换"); // 创建替换对话框;JButton replb=new JButton("替换");JButton tihuan=new JButton("替换下一个");JButton quxiao1=new JButton("取消");JPanel p1=new JPanel();JPanel p2=new JPanel();JPanel p3=new JPanel();findtxt=new JTextField(7);repltxt=new JTextField(7);p1.add(new JLabel("输入原始字符:"));p1.add(findtxt);p2.add(new JLabel("输入替换字符:"));p2.add(repltxt);p3.add(replb);p3.add(tihuan);p3.add(quxiao1);ReplaceListener r=new ReplaceListener();replb.addActionListener(r);TiHuanListener t=new TiHuanListener();tihuan.addActionListener(t);Quxiao1Listener q1=new Quxiao1Listener();quxiao1.addActionListener(q1);replace.add("North",p1);replace.add("Center",p2);replace.add("South",p3);replace.setSize(300,200);replace.show();}}//替换private class ReplaceListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stub//replace.dispose();if(findtxt.getText().equals("")||repltxt.getText().equals("")){ JOptionPane.showMessageDialog(jMenu0, "请输入要查找或替换的内容");}elseif(!findtxt.getText().equals("")&&!repltxt.getText().equals("")){str=jTextArea0.getText();startp=str.indexOf(findtxt.getText());endp=startp+findtxt.getText().length();jTextArea0.replaceRange(repltxt.getText(),startp,endp);newendp=endp; //获取这次替换的终点}}}//替换下一个private class TiHuanListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubnexttemp=newendp; /////获取上次查找的终点做为未查找字符串的起点String strall=jTextArea0.getText();jTextArea0.select(nexttemp,strall.length()); /////选中所有未查找的字符串strnext=jTextArea0.getSelectedText();newstartp=strnext.indexOf(findtxt.getText())+nexttemp;/////在未查找的字符串里搜索对应字符的在jTextArea0中的位置newendp=newstartp+findtxt.getText().length();jTextArea0.select(newstartp,newendp);if(!jTextArea0.getSelectedText().equals(findtxt.getText())){jTextArea0.setCaretPosition(0); //光标返回文件头部JOptionPane.showMessageDialog(null,"查找不到对应的字符!","查找错误",JOptionPane.ERROR_MESSAGE);}else{jTextArea0.replaceRange(repltxt.getText(),newstartp,newendp);//替换字符}}}//取消private class Quxiao1Listener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubreplace.dispose();}}//全选private class SelectAllListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubjTextArea0.selectAll();}}//新建private class NewListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubjTextArea0.setText("");}}//打开private class OpenListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubjTextArea0.setText("");JFileChooser fileChooser = new JFileChooser();int r = fileChooser.showOpenDialog(frame);if (r == JFileChooser.APPROVE_OPTION) {try {File file = fileChooser.getSelectedFile();FileReader fr = new FileReader(file);char[] buf = new char[1024];int len = 0;while ((len = fr.read(buf)) != -1) {jTextArea0.append(new String(buf, 0, len));}fr.close();} catch (IOException e1) {e1.printStackTrace();}}}}//保存private class SaveListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubif(fname==null) //如果文件名为空,说明文件未被创建,弹出另存为对话框{ othersave(); }try {File savefile=new File(path);savefile.createNewFile();FileWriter fw=new FileWriter(savefile);fw.write(jTextArea0.getText());fw.close();}catch(IOException e1){}}}//另存为private class SaveToListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubothersave();}}//另存为方法public void othersave(){if(choose.APPROVE_OPTION==choose.showSaveDialog(frame)){path=choose.getSelectedFile().getPath();newfiles=new File(path);//state.setText("JAVA记事本------"+path);fname=choose.getSelectedFile().getName();;try {newfiles=new File(path);newfiles.createNewFile();FileWriter fw=new FileWriter(newfiles);fw.write(jTextArea0.getText());fw.close();}catch(IOException e){}}}//退出private class ExitListener implements ActionListener{public void actionPerformed(ActionEvent e) {StringBuffer sb = new StringBuffer();try {FileReader fr = new FileReader("未命名文件.txt");char[] buf = new char[1024];int len = 0;while ((len = fr.read(buf)) != -1) {sb.append(new String(buf, 0, len));}fr.close();} catch (Exception e1) {e1.getStackTrace();}String s = sb.toString();if (flag == false || !(jTextArea0.getText().equals(s))) {int r = JOptionPane.showConfirmDialog(frame, "你还没有保存,要保存吗?");if (r == JOptionPane.OK_OPTION) {JFileChooser filechoose = new JFileChooser();int r1 = filechoose.showSaveDialog(frame);if (r1 == JFileChooser.APPROVE_OPTION) {File file = filechoose.getSelectedFile();try {FileWriter writer = new FileWriter(file);writer.write((String) jTextArea0.getText());writer.close();System.exit(0);} catch (IOException e1) {e1.printStackTrace();}} else {}} else if (r == JOptionPane.NO_OPTION) {System.exit(0);} else {}} elseSystem.exit(0);}}//剪切private class CutListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubjTextArea0.cut();}}//复制private class CopyListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubjTextArea0.copy();}}//粘贴private class PasteListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubjTextArea0.paste();}}//帮助private class AboutListener implements ActionListener{public void actionPerformed(ActionEvent e) {// TODO Auto-generated method stubJOptionPane.showMessageDialog(jMenu0, "李红力制作");}}//查找中查找不到的方法notfindmethod1public void notfindmethod1(){if(!jTextArea0.getSelectedText().equals(findtxt1.getText())){ jTextArea0.setCaretPosition(0); //光标返回文件头部JOptionPane.showMessageDialog(null,"查找不到对应的字符!","查找错误",JOptionPane.ERROR_MESSAGE);}}private void initComponents() {setLayout(new GroupLayout());add(getJScrollPane0(), new Constraints(new Bilateral(-1, 0, 22), new Bilateral(-1, 0, 22)));setJMenuBar(getJMenuBar0());setSize(297, 237);}private JScrollPane getJScrollPane0() {if (jScrollPane0 == null) {jScrollPane0 = new JScrollPane();jScrollPane0.setViewportView(getJTextArea0());}return jScrollPane0;}private JTextArea getJTextArea0() { if (jTextArea0 == null) {jTextArea0 = new JTextArea();}return jTextArea0;}private JMenuBar getJMenuBar0() {if (jMenuBar0 == null) {jMenuBar0 = new JMenuBar();jMenuBar0.add(getJMenu0());jMenuBar0.add(getJMenu1());jMenuBar0.add(getJMenu2());jMenuBar0.add(getJMenu3());}return jMenuBar0;}private JMenu getJMenu3() {if (jMenu3 == null) {jMenu3 = new JMenu();jMenu3.setText("帮助");jMenu3.add(getJMenuItem14());}return jMenu3;}private JMenuItem getJMenuItem14() { if (jMenuItem14 == null) {jMenuItem14 = new JMenuItem();jMenuItem14.setText("关于制作");}return jMenuItem14;}private JMenu getJMenu2() {if (jMenu2 == null) {jMenu2 = new JMenu();jMenu2.setText("格式");jMenu2.add(getJMenuItem12());}return jMenu2;}private JMenuItem getJMenuItem13() { if (jMenuItem13 == null) {jMenuItem13 = new JMenuItem();jMenuItem13.setText("字体颜色");}return jMenuItem13;}private JMenuItem getJMenuItem12() { if (jMenuItem12 == null) {jMenuItem12 = new JMenuItem();jMenuItem12.setText("换行");}return jMenuItem12;}private JMenu getJMenu1() {if (jMenu1 == null) {jMenu1 = new JMenu();jMenu1.setText("编辑");jMenu1.add(getJMenuItem5());jMenu1.add(getJMenuItem6());jMenu1.add(getJMenuItem7());jMenu1.add(getJMenuItem8());jMenu1.add(getJMenuItem9());jMenu1.add(getJMenuItem10());jMenu1.add(getJMenuItem11());}return jMenu1;}private JMenuItem getJMenuItem11() { if (jMenuItem11 == null) {jMenuItem11 = new JMenuItem();jMenuItem11.setText("查找");}return jMenuItem11;}if (jMenuItem10 == null) {jMenuItem10 = new JMenuItem();jMenuItem10.setText("替换");}return jMenuItem10;}private JMenuItem getJMenuItem9() { if (jMenuItem9 == null) {jMenuItem9 = new JMenuItem();jMenuItem9.setText("全选");}return jMenuItem9;}private JMenuItem getJMenuItem8() { if (jMenuItem8 == null) {jMenuItem8 = new JMenuItem();jMenuItem8.setText("粘贴");}return jMenuItem8;}private JMenuItem getJMenuItem7() { if (jMenuItem7 == null) {jMenuItem7 = new JMenuItem();jMenuItem7.setText("复制");}return jMenuItem7;}private JMenuItem getJMenuItem6() { if (jMenuItem6 == null) {jMenuItem6 = new JMenuItem();jMenuItem6.setText("剪切 ");}return jMenuItem6;}private JMenuItem getJMenuItem5() { if (jMenuItem5 == null) {jMenuItem5 = new JMenuItem();jMenuItem5.setText("撤销");}return jMenuItem5;}private JMenu getJMenu0() {if (jMenu0 == null) {jMenu0 = new JMenu();jMenu0.setText("文件");jMenu0.add(getJMenuItem0());jMenu0.add(getJMenuItem1());jMenu0.add(getJMenuItem2());jMenu0.add(getJMenuItem3());jMenu0.add(getJMenuItem4());}return jMenu0;}private JMenuItem getJMenuItem4() { if (jMenuItem4 == null) {jMenuItem4 = new JMenuItem();jMenuItem4.setText("退出");}return jMenuItem4;}private JMenuItem getJMenuItem3() { if (jMenuItem3 == null) {jMenuItem3 = new JMenuItem();jMenuItem3.setText("另存为");}return jMenuItem3;}private JMenuItem getJMenuItem2() { if (jMenuItem2 == null) {jMenuItem2 = new JMenuItem();jMenuItem2.setText("保存");}return jMenuItem2;}private JMenuItem getJMenuItem1() { if (jMenuItem1 == null) {jMenuItem1 = new JMenuItem();jMenuItem1.setText("打开");}return jMenuItem1;}private JMenuItem getJMenuItem0() {if (jMenuItem0 == null) {jMenuItem0 = new JMenuItem();jMenuItem0.setText("新建");}return jMenuItem0;}private static void installLnF() {try {String lnfClassname = PREFERRED_LOOK_AND_FEEL;if (lnfClassname == null)lnfClassname = UIManager.getCrossPlatformLookAndFeelClassName();UIManager.setLookAndFeel(lnfClassname);} catch (Exception e) {System.err.println("Cannot install " + PREFERRED_LOOK_AND_FEEL+ " on this platform:" + e.getMessage());}}/*** Main entry of the class.* Note: This class is only created so that you can easily preview the result at runtime.* It is not expected to be managed by the designer.* You can modify it as you like.*/public static void main(String[] args) {installLnF();SwingUtilities.invokeLater(new Runnable() {public void run() {记事本 frame = new 记事本();frame.setDefaultCloseOperation(记事本.EXIT_ON_CLOSE);frame.setTitle("新建_记事本");frame.getContentPane().setPreferredSize(frame.getSize());frame.pack();frame.setSize(500, 600);frame.setLocationRelativeTo(null);frame.setVisible(true);}});}}文件里的功能帮助功能粘贴复制全选登功能放在右键里还有快捷键功能可以自己动手试一下。