java文本编辑器
java课设文本编辑器的设计与实现
淮海工学院计算机工程学院
课程设计报告
设计名称:面向对象课程设计
选题名称:文本编辑器的设计与实现
姓名:学号:
专业班级:
系(院):计算机工程学院
设计时间:2015.6.21~2014.7.4
设计地点:计算机楼机房、教室、宿舍
();
("确定");
("这是一个简单的文本编辑器!");
();
();
();
(200,200,250,150);
();
(20 ,60,220,30);
( ("楷体",16));
();
(100,100,50,30);
();
}
( e)
{
(())
{
();
}
}
}
4.2运行结果显示
如图1:文本编辑器主界面
如图2:文本编辑器文件菜单
如图3:
文本
编辑
器编
辑菜
单
如图4:文本编辑器格式菜单
如图5:文本编辑器帮助菜单
如图6:文本编辑器字体格式和背景
如图7:
文本编。
Java-Web-Office-文档在线编辑
Java-Web-Office-文档在线编辑在当今移动化和云化的时代,办公文档的在线编辑和共享已经成为商业世界的基础要求。
在此背景下,Java Web Office文档在线编辑成为了一个广泛使用的技术。
在本文档中,我们将讨论Java Web Office文档在线编辑的基本原理和使用。
什么是Java Web Office文档在线编辑?Java Web Office文档在线编辑是一种基于Java Web技术和Office文档格式的在线编辑工具。
它允许用户在线编辑各种类型的Office文档,如Word文档、Excel表格、PowerPoint演示等。
它还可以将编辑的结果存储在云端,以便用户可以方便地实现文档的共享和协作编辑。
Java Web Office文档在线编辑的基本原理Java Web Office文档在线编辑的基本原理是将用户编辑的Office文档在服务器端转换为HTML格式,并在用户的浏览器中显示为可编辑网页。
当用户在网页上进行编辑操作时,服务器会将编辑内容保存在数据库中,以便用户之后可以打开文档并继续编辑。
用户还可以方便地阅读、打印和下载文档。
Java Web Office文档在线编辑通常包括以下主要功能:•文字处理:允许用户输入、编辑和格式化文本。
•图片处理:允许用户插入、调整和删除图片。
•文档存储:允许用户将文档存储在云端,以便共享和协作编辑。
•用户管理:允许管理员在网站上注册用户,并管理用户权限。
Java Web Office文档在线编辑的使用Java Web Office文档在线编辑通常可以在网站上直接使用,也可以通过API连接到其他系统中。
在使用Java Web Office文档在线编辑时,用户需要进行以下步骤:步骤1:登录用户需要在网站上注册账户并登录后才能使用Java Web Office文档在线编辑。
登录后,用户可以在网站上找到编辑文档的选项。
步骤2:选择文档用户可以从自己的本地计算机或者从网站上选择需要编辑的文档。
程序编辑的必备工具文本编辑器推荐
程序编辑的必备工具文本编辑器推荐文本编辑器是程序编辑的必备工具之一。
它为程序员提供了一个便捷且高效的环境,用于编辑、调试和管理代码。
在选择适合自己的文本编辑器时,往往需要考虑诸多因素,如界面友好度、功能强大程度、插件扩展性以及跨平台兼容性等。
下面将为大家推荐几款优秀的文本编辑器,帮助程序员提高开发效率。
一、Sublime TextSublime Text是一款强大且流行的文本编辑器,被广大程序员所喜爱。
它提供了简洁的界面和丰富的功能,支持多种编程语言的语法高亮、自动补全和宏命令等。
Sublime Text还支持插件扩展,可以根据个人需求进行定制。
其跨平台特性使得程序员可以在不同操作系统上进行开发,极大地提高了开发效率。
二、Visual Studio CodeVisual Studio Code是由微软推出的一款轻量级代码编辑器,其功能强大、易于使用,并且拥有丰富的插件生态系统。
Visual Studio Code支持多种编程语言,提供了智能代码补全、调试、版本控制等功能,使得程序员能够更加高效地进行开发。
它还具有丰富的主题可供选择,可以个性化编辑器的外观。
三、AtomAtom是GitHub开发的一款开源文本编辑器,被誉为“21世纪的编辑器”。
它具有可定制化的界面、快速的性能和丰富的插件生态系统。
Atom支持多种编程语言,提供了代码片段、文件目录树、项目管理等实用功能。
同时,Atom还具有Git和GitHub的集成,方便程序员进行代码版本管理。
四、Notepad++Notepad++是一款免费的文本编辑器,适用于Windows环境。
尽管它的功能相对较简单,但Notepad++提供了语法高亮、代码折叠、宏命令等功能,足以满足大部分程序员的需求。
在开发小型项目或进行简单的代码编辑时,Notepad++是一个不错的选择。
五、VimVim是一款老牌而强大的文本编辑器,它具有丰富的特性和高度可定制性。
Vim支持多种操作模式和快捷键,让用户能够快速编辑和导航代码。
java实现简易文本编辑器
java实现简易文本编辑器importjava.awt.某; importjava.awt.event.某; importjava 某.wing.某; importjava某.wing.event.某; importjava.util.某; importjava.io.某; importjava某.wing.filechooer.某; importjava某.wing.filechooer.FileFilter; importjava.awt.datatranfer.某; publicclaTe某te某tendJFrame { Te某tAreaarea; Stringname=null; Stringboard=null; privateClipboar dcb; publicTe某t()throwE某ception { etTitle("记事本"); Toolkitkit=Toolkit.getDefaultToolkit(); Imageimg=kit.getIm age("01.jpg"); etIconImage(img); JMenuBarjmb=newJMenuBar(); a dd(jmb); etJMenuBar(jmb); JMenufile=newJMenu("文件"); JMenuedit=newJMenu("编辑"); JMenuItemrebuild=newJMenuItem("新建"); JMenuItemave=newJMenuItem("保存"); JMenuItemopen=newJMenuItem("打开"); JMenuItemanotherSave=newJMenuItem("另存为"); file.add(rebuild); file.add(ave); file.add(open); file.a dd(anotherSave); rebuild.etAccelerator(KeyStroke.getKeyStroke(" ctrlN")); open.etAccelerator(KeyStroke.getKeyStroke("ctrlO")); ave.etAccelerator(KeyStroke.getKeyStroke("ctrlS")); anotherSa ve.etAccelerator(KeyStroke.getKeyStroke("ctrlA")); area=newTe 某tArea(); add(area); //JScrollPanecroldPane=newJScrollPane(area );//设置滚动轴//add(croldPane); ave.addActionLitener(newActionLitener() { publicvoidactionPerformed(ActionEvente) { try{ aveTe某t(); }catch(E某ceptione某) { } } }); open.addActionLitener(newActionLitener() { publicvoidactionPerformed(ActionEvente) { try{ openTe某t(); }catch(E某ceptione某) { } } }); rebuild.addActionLitener(newActionLitener() { publicvoidactionPerformed(ActionEvente) { try{ area.etTe 某t(""); name=null; }catch(E某ceptione某) {} } }); anotherSave.addActionLitener(newActionLitener() { publicvoidactionPerformed(ActionEvente) { anotherSaveTe 某t(); } }); JMenuItemcut=newJMenuItem("剪切"); JMenuItemcopy=newJMenuItem("复制"); JMenuItemplater=newJMenuItem("粘贴"); JMenuItemall=newJMenuItem("全选"); edit.add(cut); edit.add(copy); edit.add(plater); edit.ad d(all); cut.etAccelerator(KeyStroke.getKeyStroke("ctrl某")); copy.etAccelerator(KeyStroke.getKeyStroke("ctrlC")); plat er.etAccelerator(KeyStroke.getKeyStroke("ctrlV")); all.etAccele rator(KeyStroke.getKeyStroke("ctrlA")); cb=Toolkit.getDefaultTo olkit().getSytemClipboard(); cut.addActionLitener(newActionLite ner()//剪切{ publicvoidactionPerformed(ActionEvente) { board=area.ge tSelectedTe某t(); cb.etContent(newStringSelection(board),null); area.replaceRange("",area.ge tSelectionStart(),area.getSelectionEnd()); } }); copy.addActionLitener(newActionLitener()//复制{ publicvoidactionPerformed(ActionEvente) { board=area.getSelectedTe某t(); cb.etContent(newStringSelection(board),null); } }); pla ter.addActionLitener(newActionLitener()//粘贴{ publicvoidactionPerformed(ActionEvente) { try{ Tranfer ablecontent=cb.getContent(null); Stringt=(String)content.getTra nferData(DataFlavor.tringFlavor); area.replaceRange(t,area.getS electionStart(),area.getSelectionEnd()); }catch(E某ceptione 某) {} } }); all.addActionLitener(newActionLitener()//全选{ publicvoidactionPerformed(ActionEvente) { area.etSelect ionStart(0); area.etSelectionEnd(area.getTe某t().length()); } }); JMenuhelp=newJMenu("帮助"); JMenuItemabout=newJMenuItem("关于"); help.add(about); about.addActionLitener(newActionLitener() { publicvoidactionPerformed(ActionEvente) { JFrameframe=new JFrame("关于"); frame.etSize(150,100); frame.etLocation(400,300); JTe某tAreaarea1=newJTe某tArea("制作人:杨杰\n制作时间:2022.8.03"); frame.add(area1); frame.etViible(true); } }); jmb.add(file); jmb.add(edit); jmb.add(help); etSize(600,400);etLocation(300,200); etViible(true); etDefaultCloeOperation( JFrame.E某IT_ON_CLOSE); } publicvoidopenTe某t()//打开{ JFileChooerchooer=newJFileChooer(); FileNameE某tenionFilterfilter=newFileNameE某tenionFilter("File","t某t","java"); chooer.etFileFilter(filter); chooer.etCurrentDirec tory(newFile(".")); intreult=chooer.howOpenDialog(Te某t.thi); if(reult==JFileChooer.APPROVE_OPTION) { name=chooer.g etSelectedFile().getPath(); etTitle(name); try{ BufferedReade rin=newBufferedReader(newFileReader(name)); Stringline=null; S tringdata=""; while((line=in.readLine())!=null) { if(data=="" ) { data=data+line; } ele { data=data+"\n"+line; } } ar ea.etTe某t(data); in.cloe(); }catch(E某ceptione某) { } } } publicvoidaveTe某t()//保存{ if(name==null) { JFileChooerchooer=newJFileChooer(); F ileNameE某tenionFilterfilter=newFileNameE某tenionFilter("File","t某t","java"); chooer.etFileFilter(filter); chooer.etCurrentDirec tory(newFile(".")); intreult=chooer.howSaveDialog(Te某t.thi); if(reult==JFileChooer.APPROVE_OPTION) { name=chooer.g etSelectedFile().getPath(); try{ OutputStreamout=newFileOutput Stream(name); Stringdata=area.getTe某t(); out.write(data.getByte()); out.cloe(); }catch(E某ceptione某) { } } } ele { try{ OutputStreamout=newFileOutputStre am(name); Stringdata=area.getTe某t() ; out.write(data.getByte()); out.cloe(); }catch(E某ceptione某) { } } } publicvoidanotherSaveTe某t()//另存为{ JFileChooerchooer=newJFileChooer(); FileNameE某tenionFilterfilter=newFileNameE某tenionFilter("File","t某t","java"); chooer.etFileFilter(filter); chooer.etCurrentDirec tory(newFile(".")); intreult=chooer.howSaveDialog(Te某t.thi); if(reult==JFileChooer.APPROVE_OPTION) { name=chooer.g etSelectedFile().getPath(); try{ OutputStreamout=newFileOutput Stream(name); Stringdata=area.getTe某t(); out.write( data.getByte()); out.cloe(); }catch(E某ceptione某) { } } } publictaticvoidmain(String[]arg)throwE 某ception { newTe某t(); } }。
基于Java Web的HTML在线文本编辑器解决方案
基于Java Web的HTML在线文本编辑器解决方案摘要:FckEditor作为众多优秀HTML在线文本编辑器之一,以其支持多语言的优势而受到众多国内外开发者的亲睐。
在Java Web开发中使用FCKeditor可以实现类似微软Word桌面文本编辑器的许多强大功能,因此掌握FckEditor在Java Web开发环境下的配置过程也是开发者必备的技能之一。
关键词:Jsp;FckEditor;HTML;在线文本编辑器2基于Java Web 的HTML在线编辑器解决方案著名的开源网页编辑软件FCKEditor在09年发布至现在已经更新到3.0版本,FckEditor由于其资源轻量化、配置简单、免费开源、文本编辑功能齐全、支持多浏览器、支持PHP、JavaScript、ASP、、ColdFusion、Java、以及ABAP等不同的编程语言的强大优势,受到众多开发者亲睐。
目前,众多的Java Web 项目中FckEditor成为开发者对在线编辑器的首选,为网络文本交互提供文本样式编辑、图片上传下载和附件上传下载的功能。
3FckEditor编辑器在Java Web开发中的配置3.1开发环境和FckEditor配置文件(1)开发环境:MyEclipse7.5 ,JDK1.6 ,tomcat6.0;(2)FckEditor配置文件:FckEditor2.6.6,FckEditor java demo 2.6;3.2FckEditor在Java Web中的基本配置(1)在MyExclipse文件下建设Java Web项目FckEditor。
(2)解压FckEditor_2.6.6.zip文件,将解压后的根目录下的FckEditor文件夹拷贝到SSH框架项目下的WebRoot目录里;(3)将下载FckEditor java demo 2.6文件解压后,把根目录下Web INF中的lib里5个.jar文件:commons fileupload 1.2.1.jar、commons io 1.3.2.jar、FckEditor java core 2.4.jar、slf4j api 1.5.2.jar及slf4j simple 1.5.2.jar 拷贝到SSH框架项目下的Web INF目录中的lib目录里。
分享10个程序员常用的的代码文本编辑器
分享10个程序员常⽤的的代码⽂本编辑器通常操作系统和软件开发包中都包含⽂本编辑器,可以⽤来编辑配置⽂件,⽂档⽂件和源代码。
下⾯是笔者总结的10个最好的免费代码⽂本编辑器:1.NOTEPAD++NOTEPAD++是⼀款免费⼜优秀的⽂本编辑器,⽀持在MS Windows环境下运⾏的多种编程语⾔。
NOTEPAD++⽀持超过50种编程、脚本和标记语⾔的语法⾼亮显⽰和代码折叠,能让⽤户迅速减⼩或扩⼤代码段以便查阅整个⽂档。
⽤户也可以⼿动设置当前语⾔,覆盖默认语⾔。
该程序还⽀持⾃动完成某些编程语⾔的API⼦集。
2.VIMVIM是⼀个可⾼度⾃由配置的⽂本编辑器。
它是Vi编辑器的改进版,同时也是免费软件。
该应有程序的建⽴是为了处理代码以及其他很多事情,⽽不只是为了写电⼦邮件和打开配置⽂件。
它允许你编辑⽂本并保存简单的⽂本⽂件,但它的主要功能是还是编辑代码。
它⽀持语法⾼亮显⽰和⾏编号,这是写程序必备的两个基本功能。
⽤户也可以改变界⾯颜⾊以便增加代码的可视性。
对于⽂本编辑,VIM这个程序囊括了多种语⾔的拼写检查器,并有建议如何更正拼写错误的能⼒。
甚⾄是当你正在编写代码的时候,它也能派上⽤场,因为该应⽤程序只检查不被识别为代码的⽂本。
当然你也可以快速地从这个错误跳到下⼀个以便更好地校对⽂本。
VIM是程序员和开发⼈员应对各种⽂本编辑的最佳选择。
3.GNU EmacsEmacs是⼀个可移植、可扩展、免费的⽂本编辑器。
Emacs提供了⼀些命令来管理语句和段落,⾼亮的语法使得源代码更易于阅读,以及“键盘宏”的⽅式来执⾏⽤户定义的编辑命令。
Emacs可以在若⼲个操作系统上运⾏,⽆论你使⽤的是哪⼀种机器类型。
这让程序员⾮常受⽤。
如果你使⽤的是通⽤的编程语⾔,Emacs还会为你提供模式以及相应的排版和布局,更加⽅便你编辑代码。
Emacs或许不是最简单的⼯具,但它绝对是最强⼤的编辑器之⼀。
相⽐vim,Emacs的启动时间更长,所需要的内存也更多。
Java IDE编辑器 IntelliJ IDEA 9.0.4 or ideaIU 9.0.4 使用基础篇
Java IDE编辑器IntelliJ IDEA使用基础篇先废话几句,大凡是Java开发者都知道Eclipse集成开发编辑器,也都会使用。
但IntelliJ IDEA呢?!我估计,一部分人没听说过,一部分人知道但没有用过。
所以,我在这里写一篇怎么使用IDEA来建立一个Java Web项目。
废话完毕!以下为图文并茂具体内容:我是首先在D盘下创建一个名叫ideademo的文件夹,准备把项目放在这个目录。
哥们,你也跟着造一个吧!打开你的IDEA编辑器,选择菜单栏的第一个菜单File-->New Project,如下图:然后,就是点击按钮Next>如上图,Project files location选择项目文件的位置,就选择刚建立的文件夹ideademo,给项目起个名字叫ideaProject填到Name所在的选项框里,另外Project file fortmat选项我选的是.ipr(file based)选项。
接着,继续下一步,如图:上面这个图所说的是,建立项目源文件目录为src,没别的继续下一步,如下图:记得在左侧复选框里选上Web Application那个勾,因为要开发Java Web项目是必要的,他会给你生成web.xml文件,右边可以选择JavaEE版本,我选择Version:2.5,点击Finish就完了,剩下的是让项目运行起来了!注意:中途如果要你选择JDK,你就选择一下你的JDK安装目录。
下图是建立后的项目结构图:下一步,设置一下项目的编码吧,免得以后文件内容乱码,全给设置个utf-8编码!在编辑里点击上图菜单栏Build下面那个扳手图标,出现下图:在上图左边的框中输入encoding,然后在右边四个选项中全部选择UTF-8,点击按钮OK设置完成!接着点击编辑器中,菜单栏Run下面那个按钮,如下图:选择左侧的选项为Modules,接着选择右侧Paths选项卡,Compiler output,选择Use module compile output path选项,接着点击选项右边浏览按钮继续设置此选项的地址,如下图:因为IDEA工具默认没有给你新建classes目录,所以你设置的时候,点击WEB-INF目录,再点击的新建按钮新建classes目录,点击OK完成。
Java实现在线协作文档编辑
Java实现在线协作⽂档编辑⼤家在⼯作和学习中时常会遇到多⼈编辑⼀个⽂件的情况,⽽多⼈在线协作⽂档编辑器则是⼀个很实⽤、常⽤的⼯具,适合⼩组内的⽂档编辑。
例如可⽤于⼩团队内部进⾏实时编写和收集周报等。
这个项⽬介绍了如何设计实现该功能,使⽤java编写代码,应⽤⾮常流⾏的spring mvc框架,引⼊ckeditor插件,并加⼊localStorage缓存技术,最终利⽤Eclipse完成该实验。
⾮常适合Java 学习者⽤于练⼿。
项⽬涉及知识点:重点掌握 CKEditor重点掌握 LocalStorage 的使⽤了解 Java Web ⽅向的 SpringMVC 框架开发技巧了解 Java Web ⽅向的 Spring JDBCTemplate 开发技巧了解如何在 MySQL 中创建数据、创建表项⽬效果截图:代码开发完成后的效果图,如下:打开应⽤保存⾼清⼤图此处输⼊图⽚的描述实验原理:待实现的功能需求技术调研在线协作编辑实现多⼈在线编辑的功能,可⾃⾏开发web编辑器插件,但是实现成本较⾼,经调研⽬前已经有很多在线编辑器插件可以调⽤,请参考: HTML编辑器-HTML⽹页表单可视化在线编辑器插件⼤全其中,CKEditor(原FCKEditor)是⼀个现成的使⽤旨在简化Web内容创建HTML⽂本编辑器。
是国外⽐较流⾏的⽹页⽂本在线编辑器,早期DEDECMS管理后台发布内容地⽅使⽤此编辑器,这是⼀个所见即所得的编辑器,带来了共同的⽂字处理器的功能,直接到您的⽹页。
最后,因为 CKEditor 免费开源、完全可定制、⾼标准的质量等优点,该课程选择该插件作为前端的输⼊。
实时⾃动保存Web 缓存技术,涉及内容较多。
可参考:Web前后端缓存技术简谈常⽤缓存技术HTML5本地存储 localStorage 、sessionStorage、WebSQL、indexedDB最终,为了兼顾数据保存的简单⾼效和安全,我们选⽤ sessionStorage作为前端存储,因为sessionStorage的优点就是⽅便⾼效;同时为了保证数据的安全不丢失,我们在⽤户确认编写信息⽆误后,通过触发按钮的⽅式将数据提交后台,交由服务器进⾏存储,因为服务器存储数据安全性⾼。
文本编辑器源码
ColorSlider2.setPaintTicks(true);
ColorSlider3.setPaintTicks(true);
ColorSlider1.setMajorTickSpacing(51);
ColorSlider2.setMajorTickSpacing(51);
public class EditPanel extends JPanel
{
public EditPanel()
{
JPanel FontPanel = new JPanel();
JPanel BackColorPanel = new JPanel();
JPanel TextAreaPanel = new JPanel();
ColorSlider1.setPaintTicks(true);
ColorSlider2.setPaintTicks(true);
ColorSlider3.setPaintTicks(true);
ColorSlider1.setPaintLabels(true);
ColorSlider2.setPaintLabels(true);
CopyItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_DOWN_MASK));
CopyItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_DOWN_MASK));
Action pictureAction = new PictureAction();
java文本编辑器源码
/** To change this template, choose Tools | Templates* and open the template in the editor.*/package NotepadDemo;/**** @author DELL*/import java.awt.BorderLayout;import java.awt.FileDialog;import java.awt.Font;import java.awt.datatransfer.Clipboard;import java.awt.datatransfer.DataFlavor;import java.awt.datatransfer.StringSelection;import java.awt.datatransfer.Transferable;import java.awt.datatransfer.UnsupportedFlavorException;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.border.TitledBorder;public class NotepadDemo extends JFrame {private static final long serialVersionUID = -5355432125621015300L;private String url = null;//文件路径private String str=null;//复制或剪切的字符串private StringSelection stringSelection=null;private Clipboard clipboard=new Clipboard(str);private Transferable transferable=null;private DataFlavor flavor=null;public NotepadDemo() {init();}private void init() {setTitle("文本编辑器");setSize(500, 600);setContentPane(createContentPane());//添加主面板}/*创建主面板*/private JPanel createContentPane() {JPanel pane = new JPanel(new BorderLayout());pane.add(BorderLayout.NORTH, createChocePane());//添加菜单栏pane.add(createAreaPane());//添加文本编辑区域return pane;}/*创建菜单栏,以及实现功能*/private JPanel createChocePane() {JPanel pane = new JPanel();JMenuBar menuBar1 = new JMenuBar();JMenu menu = new JMenu("文件");menuBar1.add(menu);JMenuItem menuIt1 = new JMenuItem("新建");JMenuItem menuIt2 = new JMenuItem("打开");JMenuItem menuIt3 = new JMenuItem("保存");JMenuItem menuIt4 = new JMenuItem("另存为");menu.add(menuIt1);menu.add(menuIt2);menu.add(menuIt3);menu.add(menuIt4);JMenuBar menuBar2 = new JMenuBar();JMenu menu2 = new JMenu("编辑");menuBar2.add(menu2);JMenuItem menuIt5 = new JMenuItem("复制");JMenuItem menuIt6 = new JMenuItem("剪切");JMenuItem menuIt7 = new JMenuItem("粘帖");menu2.add(menuIt5);menu2.add(menuIt6);menu2.add(menuIt7);JMenuBar menuBar3 = new JMenuBar();JMenu menu3 = new JMenu("帮助");menuBar3.add(menu3);JMenuItem menuIt8 = new JMenuItem("关于记事本");menu3.add(menuIt8);pane.add(menuBar1);pane.add(menuBar2);pane.add(menuBar3);menuIt1.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {testArea.setText(null);}});menuIt2.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent arg0) {final FileDialog fd = new FileDialog(new JFrame(), "查找文件",FileDialog.LOAD);fd.setVisible(true);if (fd.getDirectory() != null && fd.getFile() != null) {testArea.setText(null);url = fd.getDirectory() + fd.getFile();try {BufferedReader in = new BufferedReader(new FileReader(url));for (int i = 0;; i++) {testArea.append(in.readLine());if (in.read() == -1) {break;} elsecontinue;}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}});menuIt3.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {if (url==null) {url="D:\\文本编辑器文本文档.txt";}File f = new File(url);BufferedWriter out = null;try {out = new BufferedWriter(new FileWriter(url));f.createNewFile();out.append(testArea.getText());out.flush();} catch (IOException e1) {e1.printStackTrace();} finally {try {out.close();} catch (IOException e1) {e1.printStackTrace();}}}});menuIt4.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent arg0) {FileDialog fd = new FileDialog(new JFrame(), "保存文本",FileDialog.SAVE);fd.setVisible(true);if (url!=null) {File f = new File(url);BufferedWriter out = null;try {f.createNewFile();out = new BufferedWriter(new FileWriter(url));out.append(testArea.getText());out.flush();} catch (IOException e) {e.printStackTrace();} finally {try {out.close();} catch (IOException e) {e.printStackTrace();}}}}});menuIt5.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {str=testArea.getSelectedText();stringSelection=new StringSelection(str);clipboard.setContents(stringSelection, null);}});menuIt6.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent arg0) {str=testArea.getSelectedText();stringSelection=new StringSelection(str);clipboard.setContents(stringSelection, null);int start=testArea.getSelectionStart();int end=testArea.getSelectionEnd();testArea.replaceRange( null,start,end);}});menuIt7.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {transferable=clipboard.getContents(this);flavor=DataFlavor.stringFlavor;if (transferable.isDataFlavorSupported(flavor)) {int start=testArea.getSelectionStart();int end=testArea.getSelectionEnd();testArea.replaceRange( null,start,end);int pos=testArea.getCaretPosition();try {str=(String)transferable.getTransferData(flavor);testArea.insert(str, pos);} catch (UnsupportedFlavorException e1) {e1.printStackTrace();} catch (IOException e1) {e1.printStackTrace();}}}});menuIt8.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {JOptionPane.showMessageDialog(null,"原创");}});return pane;}JTextArea testArea;private JScrollPane createAreaPane() {JScrollPane pane = new JScrollPane();pane.setBorder(new TitledBorder("编辑区域"));testArea = new JTextArea();testArea.setFont(new Font("宋体", Font.BOLD, 13));testArea.setLineWrap(true);pane.getViewport().add(testArea);return pane;}public static void main(String[] args) {NotepadDemo td = new NotepadDemo();td.setVisible(true);}}。
简述使用文本编辑器和 jdk 创建并运行 java 应用程序的基本步骤。
简述使用文本编辑器和 jdk 创建并运行java 应用程序的基本步骤。
Java语言的开发环境主要由文本编辑器和JDK组成。
文本编辑器可用于编写Java源程序,而JDK是一个完整的Java开发套件,其中包含JRE、开发工具和类库等三个主要部分,可用于编译、构建和调试Java程序。
创建并运行Java应用程序需要如下基本步骤:第一步:安装和配置JDK在开始编写Java程序之前,首先需要安装和配置Java开发环境。
具体来说,需要下载并安装JDK并且配置环境变量。
常用的JDK有Oracle JDK和Open JDK。
JDK安装文件的下载地址可以在Oracle官网上找到,而且安装过程也非常简单,只需根据向导提示进行下一步即可。
安装完成后,还需要配置环境变量,以便将Java开发环境添加到系统的环境变量列表中,使得Java开发环境变化成全局可用。
第二步:创建Java源程序Java源程序通常以.java文件扩展名结尾,创建Java源程序的两种方式:文本编辑器和集成开发环境IDE。
在这里,我们主要介绍使用文本编辑器的方法。
首先,打开文本编辑器,如Windows自带的记事本(Notepad)或者Notepad++、Sublime Text等带有高亮和自动缩进功能的编辑器。
然后,输入Java源程序代码。
下面是一个简单的Java 程序示例:```public class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```第三步:将源程序编译成Java字节码完成Java源程序的编写之后,需要将源程序编译成Java字节码。
JDK自带的Java编译器叫做javac,它将Java源程序转换为Java字节码,并将其存为.class文件。
在命令行终端中,进入源程序所在的目录,输入以下命令进行编译:```javac HelloWorld.java```编译完成后,会在当前目录下生成一个名为HelloWorld.class的文件。
java课程设计报告-java课程设计
Java 课程设计报告题目:文本编辑器班级:学号:姓名:成绩:日期:年月日目录一、综合设计的目的与要求⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯3二、综合设计正文⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯31. 系统分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯31.1系统开发背景、开发范围、建设目标与必要性开发⋯⋯⋯⋯⋯⋯⋯⋯31.2需求分析⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯32.系统设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯32.1功能设计⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯32.2系统运行环境与开发工具⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯43 . 系统实施⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯4 3.1 源程序⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯43.2 .系统测试及部分截图⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯12三、综合设计总结或结论⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯13四、参考文献⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯13《文本编辑器》一、综合设计的目的与要求要求在学生能够较熟练使用java 程序设计语言进行软件代码的编写,同时还要具备较好的项目分析的能力,加深对相关课程基本内容的理解。
同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统的练习。
二、综合设计正文1系统分析1.1系统开发背景、开发范围、建设目标与必要性随着计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
当然对文本编辑操作仍然占据着重要地位,记事本是简单便捷的文本编辑器,可实现对文本编辑操作的基本功能。
1.2需求分析程序设计主要分为两大部分:简单 GUI 设计和程序功能设计。
通过 GUI 设计实现图形用户界面,提供图形菜单,方便用户操作。
使用Java 语言编写一个能够对输入文字进行操作,具有合理的界面,能够在界面中实现右键快捷方式,对文档内容进行编辑操作,并且能够顺利退出的程序。
基于Java Web的HTML在线文本编辑器解决方案——以FckEditor在线编辑器为例
V 1 O . o . NO2 1
F b. Ol e 2 1
基 于 J v e a aW b的 H TM 线 文 本 L在 编 辑 器 解 决 方 案
以 F k i r 线 编 辑 器 为 例 c Edt 在 o
于梅 英 , 姜 波 , 张 珂
( 州 大 学 网络 教 育 学 院 , 肃 兰 州 7 0 0 ) 兰 甘 3 0 0
ior t 。
( ) 压 F k dtr2 6 6 z 2解 c E i 一 . . .i 件 , 解 压 后 的根 目 o p文 将
的 HT ML在线 编 辑器 也是 千 差 万别 , 中大 多数 都支 持 常 其
用 的 we b开 发 语 言 , AS P 、 NE 等 语 言 。 然 而 , 如 P、 HP . T 随 着 Jp技 术 的 成 熟 和 发 展 , 部 分 不 支 持 J p编 辑 器 已 不 能 s 一 s
2 基于 Jv b的 H ML在线编辑器解 决方案 aaWe T
著 名 的 开 源 网 页 编 辑 软 件 F KEdtr在 O C i o 9年 发 布 至 现 在 已经 更 新 到 3 0版 本 , c E i r由 于 其 资 源 轻 量 化 、 . F k dt o 配 置 简单 、 费 开 源 、 本 编 辑 功 能 齐 全 、 持 多 浏 览 器 、 免 文 支 支持 P HP、a a cit AS 、 P NE C lF s n J v 、 Jv S r 、 P AS . T、 od u i 、a a p o
上 传 文 件或 附 件 的 路 径及 存 放 文 件 的文 件 夹 名 , 根 可
据 项 目 需 要 自行 设 定
33 实 现文本样 式编辑 、 . 图片 上 传 和 附 件 上 传 下 载
文本编辑器介绍文档
JIANGXI AGRICULTURAL UNIVERSITYJAVA实训课程设计报告题目:文本编辑器学院:软件学院姓名:刘兵学号:20201549专业:软件开发年级:095 班指导教师:易文龙二0 1 1 年 6 月201.系统分析 (3)1.1 需求分析 (3)1.2 可行性研究 (4)1.3 开发及运行环境分析 (4)2.系统设计 (4)2.1系统流程图 (5)2.2系统功能模块分析 (6)3.菜单栏模块 (8)3.1 NotePad类 (8)3.2菜单栏设计 (10)3.21接口类Swing.java代码: (11)3.22菜单栏类Swing_MenuBar.java代码: (11)3.23菜单栏事件类JMenuBar_Listener.java代码: (14)3.3 工具栏 (19)3.31构建工具栏Swing_JToolBar.java类代码: (19)3.32工具栏事件响应类JToolBar_Listener.java代码: (25)3.4 弹出式菜单栏 (31)3.41弹出式菜单栏NotepadPopupMenu.java代码: (31)3.42弹出式菜单栏事件处置类JPopupMenu_Listener.java代码: (34)3.5 文本面板JTextPane和总面板JPanel (35)3.51JTextPane代码: (36)3.52 JPanel的代码: (38)3.6 相关子界面 (39)3.61颜色选择类Swing_JColorDialog.java代码: (39)3.62字体大小设置Swing_JFontSize.java代码: (43)3.63保留文本Swing_SavingDialog.java代码: (47)3.64帮忙Swing_Help.java代码: (49)3.65关于Swing_About.java代码: (51)3.66撤销Swing_Undo.java代码: (54)3.67提示Swing_JDialog.java代码: (56)3.7 相关功能截图 (59)3.71编辑功能截图 (59)3.72保留功能截图 (60)3.73文件打开功能截图 (62)3.74文字加粗、斜体、下划线功能 (62)3.75文本对齐方式功能截图 (64)3.76文字变色、变大小功能截图 (65)3.77文本背景颜色更改功能截图 (67)3.78文本编辑器的帮忙和关于功能截图 (68)1.系统分析1.1 需求分析现今时期,随着科技的进展,人们对信息和文字的处置愈来愈高,要求能有一个高效率、便利的办公软件,来处置繁琐的信息和文字。
基于Java的文本编辑软件的设计与实现_论文终稿(目录+正文部分)
目录1 绪论 (1)1.1课题研究的背景及意义 (1)1.2 文本编辑器软件的应用现状 (1)1.3 本文工作和结构安排 (2)1.3.1 本文主要工作 (2)1.3.2 本文结构安排 (3)1.4 小结 (3)2 相关技术介绍 (4)2.1 Java技术 (4)2.1.1 Java特点 (4)2.1.2 程序开发常用包 (5)2.2 小结 (6)3 系统分析与设计 (7)3.1 软件需求分析 (7)3.2 系统类设计 (8)3.3 系统总体设计 (13)3.3.1 设计原理 (15)3.3.2 功能模块划分 (15)3.4 小结 (17)4 详细设计与实现 (18)4.1 系统开发平台及工具选择 (18)4.2 主窗体设计与实现 (18)4.3 新建功能设计与实现 (20)4.3.1 新建功能概述 (20)4.3.2 新建功能技术分析 (20)4.3.3 新建功能实现过程 (21)4.4 打开功能设计与实现 (21)4.4.1 打开功能概述 (21)4.4.2 打开功能技术分析 (21)4.4.3 打开功能实现过程 (22)4.5保存功能设计与实现 (22)4.5.1 保存功能概述 (22)4.5.2 保存功能技术分析 (22)4.5.3 保存功能实现过程 (23)4.6 全选功能设计与实现 (23)4.6.1 全选功能概述 (23)4.6.2 全选功能技术分析 (23)4.6.3 全选功能实现过程 (23)4.7 退出功能设计与实现 (24)4.7.1 退出功能概述 (24)4.7.2 退出功能技术分析 (24)4.7.3 退出功能实现过程 (24)4.8 查找功能设计与实现 (25)4.8.1 查找功能概述 (25)4.8.2 查找功能技术分析 (25)4.8.3 查找功能实现过程 (25)4.9 查找下一个功能设计与实现 (26)4.9.1 查找下一个功能概述 (26)4.9.2 查找下一个功能技术分析 (26)4.9.3 查找下一个功能实现过程 (26)4.10 替换功能设计与实现 (27)4.10.1 替换功能概述 (27)4.10.2 替换功能技术分析 (27)4.10.3 替换功能实现过程 (28)4.11 设置字体功能设计与实现 (28)4.11.1 设置字体功能概述 (28)4.11.2 设置字体功能技术分析 (28)4.11.3 设置字体功能实现过程 (28)4.12 编译功能设计与实现 (29)4.12.1 编译功能概述 (29)4.12.2 编译功能技术设计 (29)4.12.3 编译功能实现过程 (30)4.13 运行功能设计与实现 (30)4.13.1 运行功能实现概述 (30)4.13.2 运行功能技术分析 (30)4.13.3 运行功能实现过程 (31)4.14 获取系统时间功能设计与实现 (31)4.15 复制功能设计与实现 (31)4.16 剪切功能设计与实现 (32)4.17 粘贴功能设计与实现 (32)4.18 帮助功能设计与实现 (32)4.19 小结 (33)5测试目的 (34)5.1测试目的 (34)5.2 功能测试 (34)5.3界面测试 (34)5.4 小结 (36)6 结束语 (37)6.1 总结 (37)6.2 展望 (37)附录 (38)参考文献 (40)致谢 (41)XX学校本科毕业设计1 绪论本章是论文的序言部分,将论述论文研究的背景、意义、研究现状以及论文要完成的工作。
文本编辑器源代码
catch (IOException ex) {
jlblStatus.setText("Error opening " + file.getName());
}
}
/** Save file with specified File instance */
jta.append(new String(b, 0, b.length));
in.close();
// Display the status of the Open file operation in jlblStatus
jlblStatus.setText(file.getName() + " Opened");
}
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==menuItem11)
open();
else if(e.getSource()==menuItem12)
save();
else if(e.getSource()==menuItem13)
JFileChooser.APPROVE_OPTION) {
save(jFileChooser1.getSelectedFile());
}
}
private void open(File file) {
try {
// Read from the specified file and store it in jta
menu2.add(menuItem22);
menuItem31=new JMenuItem("关于");
项目一 简单计算器或文本编辑器
flag=false;
write();
newNew();
}
}else{
newNew();
}
}else if("打开".equals(comm)){
JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");
jfc.setDialogType(JFileChooser.OPEN_DIALOG);
->帮助主题:要求实现本软件的帮助文档。
(2)文本编辑器:(参考系统附件中的记事本功能)
三个菜单项:文件->打开
新建
保存
另存为
编辑->复制
->粘贴
帮助->关于编辑器:要求写本软件的相关信息;
->帮助主题:要求实现本软件的帮助文档。
3、界面中的功能:
(1)计算器:要求可实现简单的“+”、“-”、“*”、“/”以及混合运算。
flag=false;
value=result;
jta.setText(result);
}
}else if("保存".equals(comm)){
JFileChooser jfc=new JFileChooser("D:\\java课堂笔记");
if(flag){
int returnVal = jfc.showDialog(null,"保存为");
int returnVal = jfc.showDialog(null,"另存");
if(returnVal == JFileChooser.APPROVE_OPTION) {
编辑器使用Java语言和JavaFX开发的小程序
编辑器使用Java语言和JavaFX开发的小程序随着计算机技术的不断发展,各种各样的应用程序层出不穷。
其中,编辑器是一类非常重要的应用程序,它可以方便地编辑文本、代码等内容。
本文将介绍使用Java语言和JavaFX开发的小程序,该程序旨在提供一个功能强大、易于使用的编辑器。
1. 程序概述该小程序基于Java语言和JavaFX开发,旨在为用户提供一个强大的文本编辑器。
它具有以下主要特点:1.1 支持多种文件类型该编辑器可以处理多种文件类型,包括普通文本文件、代码文件等。
用户可以根据自己的需要选择不同的文件类型,并获得相应的编辑功能。
1.2 语法高亮为了方便用户编写代码,该编辑器实现了语法高亮功能。
它可以根据不同的编程语言,对代码进行高亮显示,使代码结构更加清晰,易于阅读和修改。
1.3 智能代码补全为了提高用户的编程效率,该编辑器还实现了智能代码补全功能。
当用户输入代码时,编辑器可以自动弹出建议,并提供相关的代码片段,减少用户的输入量,提高编程效率。
1.4 代码格式化为了保持代码的规范和一致性,该编辑器提供了代码格式化功能。
用户可以通过点击按钮或使用快捷键,对代码进行格式化,使代码的缩进、空格等方面符合编码规范。
1.5 文件管理除了编辑功能,该编辑器还提供了文件管理功能。
用户可以通过编辑器直接打开、保存和关闭文件,还可以创建、删除和重命名文件。
这样,用户可以方便地管理自己的文档和代码文件。
2. 开发环境该小程序使用Java语言和JavaFX框架进行开发。
Java是一种跨平台的编程语言,可在不同的操作系统上运行。
JavaFX是一种用于构建富客户端应用程序的Java库,可以创建漂亮的用户界面。
为了开发该程序,你需要安装Java开发工具包(JDK)和JavaFX 库。
在准备好开发环境后,你可以使用Java编程语言和JavaFX的相关API来编写程序代码。
3. 实现过程3.1 创建界面首先,我们需要创建一个用户界面,用于展示编辑器的各个功能。
27款优秀的文本编辑器
27款优秀的⽂本编辑器经常跟代码打交道的⼈,除了⾃⼰所掌握的代码知识之外,我想他们最需要的⼯具之⼀,应该是⼀款得意的⽂本编辑器了。
好的⽂本编辑器⼀般都⽀持语法⾼亮功能,⽀持多语⾔,⽂件⽐较、插件、代码⽚断助⼿、预览以及FTP管理。
⼀些编辑器甚⾄为⼀个完全的开发环境提供了全⾯的功能和特性。
这⾥是我收集的27款免费的⽐较优秀的⽂本编辑器,适⽤在Windows,Mac或Linux等操作系统环境下⼯作,其中有些还可同时兼容多个操作系统。
Notepad++Notepad++ 是⼀款很有特⾊的⽂本编辑器:1、内置⽀持27 种语法⾼亮度显⽰,⽀持⾃定义语⾔;2、可⾃动检测⽂件类型,根据关键字显⽰节点,节点可⾃由折叠/打开;3、可同时打开两个窗⼝,在分窗⼝中⼜可打开多个⼦窗⼝,允许快捷切换全屏显⽰模式(F11),⽀持⿏标滚轮改变⽂档显⽰⽐例;4、其他特点包括:邻⾏互换位置、宏功能等等。
⼯作环境:WindowsBBEditBBEdit是全球领先的专业HTML和⽂本编辑器,功能包括grep图样匹配,搜索和替换多个⽂件,项⽬定义,功能导航和众多的源代码语⾔的语法着⾊,⽀持代码折叠,FTP和SFTP打开和保存等。
⼯作环境:Mac OS。
Boxer Text EditorEditra是⼀个⽀持多平台的⽂本编辑器,可以⽀持基本语法和⼆⼗种语⾔。
它使⽤⽅便,可以⽤颜⾊标注重点部分,⽀持进⾏内嵌式编辑,也可以进⾏代码编辑。
emacsEmacs不仅仅是⼀个编辑器,他是⼀个整合环境,或可称它为集成开发环境,这些功能如让使⽤者置⾝于全功能的操作系统中。
能够在当前⼤多数操作系统上运⾏,包括类Unix系统、MS-DOS、Microsoft Windows以及OpenVMS等。
Emacs既可以在⽂本终端也可以在图形⽤户界⾯(GUI)环境下运⾏。
FraiseFraise是⼀款免费专门为MacOSX10.6开发的⽂本编辑器,并且⾮常易⽤和强⼤。
FCKeditor编辑器在Java中的应用
■ 中国人 民银 行上饶 市 中心支行 朱 勇士
在Jv的We应用开发 中, aa b 大量文本输入往往因缺
.
< e ve > s r lt
乏像MSwod r一样 的版面编辑功能, 页面输 出显得不够
漂亮。 最近几年虽然出现多款支持J a a 的在线编辑器 , v
一
自 项 目的/ b otF 将fk dt -aa 24z 解压 建 We R o厂 。 ce i rjv 一 .. p o i
三 、 C e io 的应 用 FK d r t
完成 以上配置以后, 就可以在项 目中使用F K d o C e ir t
编辑器。
( ) 用 F K dtr 一 调 C ei o
< cit y e ” x/ v sr t r : / k dtr sr p = t t aa ci ”sc ” c e i / p t e j p f o f eirs> / r t c d o.” < ci > k tj s p
s 4—i pe 1 .. r l js l . 2 a类包 复制到 自 项 目的/ b o t f m 一5 j 建 We R o /
WE — N / b ̄o B I Fl / i
调用 F K d o的方 式 主 要 有三 种。 C eir t
另 外 , 需 要 在 官 网 中下 载 f k d t r i v — 还 c e io — a a d mo 24w r 件 。 其发 布 在t mc t 然 后把 e 一 . .a文 将 o a 中,
/c e i re i rflma a e/o n cos fk dt /d t / e n g rc n e tr/ o o i <ulp t r > / r- at n e < s rlt ma pn > /e ve— p ig
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件学院
课程设计报告书
课程名称
设计题目文本编辑器的设计与实现
专业班级XXXXXXXXXXX
学号xxxxxxxxxx
姓名xxx
指导教师
2011 年11月
formatMenu.setMnemonic( 'R' );
4.3.5创建,添加帮助菜项
JMenu helpMenu = new JMenu( "帮助(H)" );
helpMenu.setMnemonic( 'H' );
JMenuItem helpItem = new JMenuItem( "帮助主题(H)..." );
helpItem.setMnemonic( 'H' );
helpMenu.add( helpItem );
helpItem.addActionListener(
new ActionListener(){
public void actionPerformed( ActionEvent event ){
JTextArea helpText = new JTextArea(
JScrollPane scroller = new JScrollPane(helpText);
JOptionPane.showMessageDialog(null,scroller);
}
}
);
bar.add( helpMenu ); //添加
4.4设计成果
4.4.1运行界面
图1文本编辑器中字体颜色界面
图2 文本编辑器主界面图3文本编辑器编辑界面
图4文本编辑器文件界面图5文本编辑器格式
图6文本编辑器查找界面图7 文本编辑器帮助界面
图8文本编辑器字体名称界面图9文本编辑器字体风格界面
图10文本编辑器中帮助中关于对话框图11查找消息对话框
图12文本编辑器中另存为对话框
4.4.2主要代码
import java.awt.*;
import java.awt.event.*;
import java.awt.datatransfer.*;
import javax.swing.*;
import java.io.*;
import ng.*;
public class Notepad extends JFrame{
private final Color colorvalues[] =
{ Color.black, Color.blue, Color.red, Color.green }; //定义颜色数组String styleNames[] = { "Bold", "Italic" };//定义风格数组
String fontNames[] = { "宋体", "华文行楷", "隶书" };//字体数组
String[] sizeString = new String[30];//字号数组
int[] size = new int[30];//与字号数组对应的字号整数,用于设置文字大小
private JRadioButtonMenuItem colorItems[], fonts[];。