JAVA课程设计记事本(含代码)1_第1页
JAVA课程设计记事本(含代码)1_第2页
JAVA课程设计记事本(含代码)1_第3页
JAVA课程设计记事本(含代码)1_第4页
JAVA课程设计记事本(含代码)1_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目目 录录第第1章章 引言引言 .11.1 背景背景.11.2 课程设计内容课程设计内容.1第第2章章 记事本系统记事本系统 .32.1 记事本概述记事本概述.32.2 记事本的任务及目的记事本的任务及目的.32.3 本章小结本章小结.3第第3章章 记事本的设计记事本的设计 .43.1 系统需求分析系统需求分析.43.2 系统开发及运行环境系统开发及运行环境.43.3记事本总体结构(流程图)记事本总体结构(流程图).53.4 记事本系统各模块介绍记事本系统各模块介绍.53.5 本章小结本章小结.6第第4章章 系统的具体实现系统的具体实现 .74.1窗口设计窗口设计.74.2程序功能设计及调试运

2、行程序功能设计及调试运行.84.2.1在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。点击不同菜单在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。点击不同菜单项时,显示不同接口。项时,显示不同接口。.94.2.2加入工具栏的功能键,通过工具栏实现对文本的基本操作。加入工具栏的功能键,通过工具栏实现对文本的基本操作。.114.3 本章小结本章小结.18第第5章章 改进部分改进部分 .195.1加登陆界面加登陆界面.195.1.1登陆界面设计登陆界面设计.195.1.2 系统主界面系统主界面.22I第第6章章 结束语结束语 .24附录附录 源代码源代码 .270第第1章章

3、引言引言1.11.1 背景背景在文本编辑器出现前,人们用打孔机把计算机文字打到穿孔卡片上。文字存放于一个装着这样的薄卡片的盒子里,可以用读卡器来阅读它。 第一个文本编辑器是一种行编辑器,它运行在打字机型的终端上,这种编辑器并不具备在窗口和屏幕中显示的功能。它包含了一些非常短的命令(为了减少打字量)。其中一个命令能够把文件的指定部分通过打字机打印出来。编辑光标是想象中的一个插入点,通过特殊命令,可以把它移动到特定内容字符串所在的行。随后,内容字符串又被扩展成正则表达式。如果想看到文件的变化,你需要把它打印出来。相对于穿孔机来说,人们认为这种基于行的文本编辑器具有革命性的进步。如果没有它,用户就需

4、要把那些处理文本的命令打成专用的卡片,并在编辑文件时使用这些卡片。 当带有显示屏的计算机终端出现后,基于显示屏的文本编辑器开始流行起来。最早的全屏编辑器中,有一种叫做O26,它是于1967年为CDC 6000系列机器的操作控制台而作的。另外一个早期的全屏编辑器是vi。vi诞生于20世纪70年代,至今,它仍是Unix和Linux的标准编辑器。全屏编辑器对视频终端的销售起到了促进的作用。1.21.2 课程设计内容课程设计内容记事本充分发挥文本编辑的优势,通过各种操作的有机结合,实现文本编辑的各项所需功能。本程序的研究内容涉及记事本功能实现的全过程。 该记事本功能包含以下内容:(1)打开文件,读取文

5、件中的文本信息:对原有文件可实行打开操作,并能读取文件中的内容,以方便对文件的查看,修改等任务。(2)显示、编辑修改文本信息:记事本对文字信息的主要处理功能。可对相关信息进行复制,剪切,粘贴等操作。(3)实现新建、保存文本文件:新建文本可以使用户写入新的信息,文件保存后再次打开仍可获得原有信息。1第第2章章 记事本系统记事本系统2.12.1 记事本概述记事本概述 记事本是一种只能处理纯文本的文件。由于多种格式源代码都是纯文本的,所以记事本也就成为了使用最多的源代码编辑器。它只具备最基本的编辑功能,所以体积小巧,启动快,占用内存低,容易使用。“记事本”的功能虽然连“写字板”都比不上,但它还是有它

6、自己的独门绝技的。下面我们就来看看记事本吧。相对于微软的Word来说“记事本”的功能确实是太单薄了,只有:新建,保存,打印,查找,替换这几个功能。但是“记事本”却拥有一个Word不可能拥有的优点:打开速度快,文件小。我相信对于这一点大家一定是深有感触地,一点就打开;同样的文本文件用Word保存和用记事本保存的文件大小就大不相同,所以对于大小在64KB以下的纯文本的保存最好还是采用记事本。记事本另一项不可取代的功能是:可以保存无格式文件。你可以把记事本编辑的文件保存为:“.html”, “.java”,“.asp”等等任意格式。这使得“记事本”又找到了一个新的用途:作为程序语言的编辑器。翻开任何

7、一本介绍一门编程语言的入门教材,里面都会建议学生在记事本中编写源程序。记事本使用的一个老窍门,在记事本文件的开头输入:“.LOG”之后你每次打开这个文件就会在自动的纪录下文本打开的时间。 2.2 记事本的任务及目的记事本的任务及目的 打开计算本窗口,在编辑区进行文本的输入,可以使用剪切、拷贝、粘贴等功能键,当文本输入完毕后点击“文件”菜单,选择下拉菜单中的“保存文本”打开“保存”窗口,选择保存文件的根目录进行保存。当需要关闭窗口时可通过“文件”菜单下的“退出系统”选项,或者选择“工具栏”中的“退出系统”按钮,也可以直接点击窗口右上角的关闭图标进行关闭。2.32.3 本章小结本章小结记事本是一种

8、只能处理纯文本的文件。可以通过菜单栏和工具栏实现以下功能:如文件的新建,打开,保存和退出;对文件的编辑,如复制,剪切,粘贴;以及帮助菜单;执行完操作后,能够顺利关闭记事本。2第第3章章 记事本的设计记事本的设计这一章时进销存管理系统的设计,从系统需求分析开始,介绍开发环境和用到的开发工具,系统主要的功能设计,系统的数据流程图。3.13.1 系统需求分析系统需求分析记事本的设计目标为: 打开计算本窗口,在编辑区进行文本的输入,可以使用剪切、拷贝、粘贴等功能键,当文本输入完毕后点击“文件”菜单,选择下拉菜单中的“保存文本”打开“保存”窗口,选择保存文件的根目录进行保存。当需要关闭窗口时可通过“文件

9、”菜单下的“退出系统”选项,或者选择“工具栏”中的“退出系统”按钮,也可以直接点击窗口右上角的关闭图标进行关闭。 33.2记事本总体结构记事本总体结构(流程图)(流程图) 图图3.1 系统功能结构图系统功能结构图3.3 记事本系统各模块介绍记事本系统各模块介绍系统各功能模块实现的功能为:新建记事本:在文件的下拉菜单中点击新建文本或单击工具栏中的新建文本,将文本刷新。打开原有的记事本:在文件的下拉菜单中点击打开文本或单击工具栏中的打开文本,再选中原有的记事本,单击打开按钮,便将原有文本打开。拷贝:先选中需复制的文本,在编辑的下拉菜单中点击拷贝或单击工具栏中的拷贝,便将所选文本复制了。粘贴:在编辑

10、的下拉菜单中点击粘贴或单击工具栏中的粘贴,便将所复制的文本粘贴到需粘贴的地方。剪贴:先选中需剪贴的文本,在编辑的下拉菜单中点击剪贴或单击工具栏中4的剪贴,便将所选文本剪贴了。保存:在文件的下拉菜单中点击保存文本或单击工具栏中的保存文本,便将改变的文本保存好。退出系统:在文件的下拉菜单中点击退出系统或单击工具栏中的退出系统,或直接点击状态栏中的,从而关闭文本。3.43.4 本章小结本章小结本章介绍了该记事本的运行环境,以及各功能的体现。第第4章章 系统的具体实现系统的具体实现界面是系统之间最直接的交互界面,界面的友好性体现了软件设计的质量, 并在很大程度上决定了软件是否成功。4.14.1窗口设计

11、窗口设计 在主接口中设计一个EditorDemo容器继承自JFrame,并在其中加入菜单栏、工具栏和一个文本域控件。 public class EditorDemo extends JFrame5JTextPane textPane = new JTextPane(); /创建文本窗格,编辑窗口JFileChooser filechooser = new JFileChooser(); /文件选择器setJMenuBar(createJMenuBar(actions); /设置菜单栏Container container = getContentPane(); /得到容器 container.

12、add(createJToolBar(actions), BorderLayout.NORTH); /工具栏container.add(textPane, BorderLayout.CENTER); /增加文本窗格窗口设计流程图窗口设计流程图:设计一个容器继承自JFrame创建文本窗格,编辑窗口创建文件选择器设置菜单栏得到容器添加工具栏添加文本窗格图图4.1 窗口模块框图窗口模块框图64.24.2程序功能设计及调试运行程序功能设计及调试运行 利用JSP“一次编写,各处运行”的编程优点,按功能模块结构设计菜单,布置各明细模块工作界面,编写各个模块的程序代码,进行编译连接运行,经过反复调试修改,以

13、达到系统功能要求。这个过程具有大量的工作量,应仔细对每个程序细节进行分析思考、编写程序并调试,做到程序简洁清楚,尽量避免可能潜在的程序错误,并在必要的地方加以注释,以便于程序阅读和修改。4.2.1在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。点击不同菜单项时,显示不同接口。能。点击不同菜单项时,显示不同接口。部分代码部分代码:private JMenuBar createJMenuBar(Action actions) /创建菜单栏JMenuBar menubar = new JMenuBar(); /实例化菜单栏JMenu

14、 menuFile = new JMenu(文件(F); /实例化菜单 JMenu menuEdit = new JMenu(编辑(E);JMenu menuFormat = new JMenu(格式(O);JMenu menuFind = new JMenu(查找(V);JMenu menuAbout = new JMenu(帮助(H);menuFile.add(new JMenuItem(actions0); /增加新菜单项menuFile.add(new JMenuItem(actions1);menuFile.add(new JMenuItem(actions2);menuFile.a

15、ddSeparator();menuFile.add(new JMenuItem(actions7);menuEdit.add(new JMenuItem(actions3);menuEdit.add(new JMenuItem(actions4);menuEdit.add(new JMenuItem(actions5);menuAbout.add(new JMenuItem(actions6);menubar.add(menuFile); /增加菜单menubar.add(menuEdit);menubar.add(menuFormat);menubar.add(menuFind);menu

16、bar.add(menuAbout);return menubar; /返回菜单栏实现对文件的操作功能流程图:实现对文件的操作功能流程图:7创建菜单栏实例化菜单栏增加新菜单项添加菜单返回菜单栏图图4.24.2 实现操作功能框图实现操作功能框图如下图:图图4.2.1 文件菜单功能生成界面文件菜单功能生成界面8图图4.2.2编辑菜单功能生成界面编辑菜单功能生成界面图图4.2.3 帮助菜单功能生成界面帮助菜单功能生成界面4.2.2加入工具栏的功能键,通过工具栏实现对文本的基本操作。加入工具栏的功能键,通过工具栏实现对文本的基本操作。关键代码关键代码: Action actions = /Action

17、数组,各种操作命令new NewAction(),new OpenAction(),new SaveAction(),new CutAction(),new CopyAction(),new PasteAction(),new AboutAction(),new ExitAction(),private JToolBar createJToolBar(Action actions) /创建工具条JToolBar toolBar = new JToolBar(); /实例化工具条 JButton bt = new JButton(actionsi); /实例化新的按钮toolBar.add(bt

18、); /增加按钮到工具栏如图所示:94.2.3对每个菜单项进行注册监听。点击不同功能键时,实现不同的操对每个菜单项进行注册监听。点击不同功能键时,实现不同的操作,显示不同的窗口。作,显示不同的窗口。 主要实现方法代码如下主要实现方法代码如下:class NewAction extends AbstractAction /实现新建文件命令功能public NewAction() super(新建文本);public void actionPerformed(ActionEvent e) textPane.setDocument(new DefaultStyledDocument(); /清空文档

19、class OpenAction extends AbstractAction /实现打开文件命令功能public OpenAction() super(打开文本);public void actionPerformed(ActionEvent e) int i = filechooser.showOpenDialog(EditorDemo.this); /显示打开文件对话框if (i = JFileChooser.APPROVE_OPTION) /点击对话框中打开选项File f = filechooser.getSelectedFile(); /得到选择的文件try InputStream

20、 is = new FileInputStream(f); /得到文件输入流textPane.read(is, d); /读入文件到文本窗格 catch (Exception ex) ex.printStackTrace(); /输出出错信息 如下图:10图图4.2.4 打开文件生成界面打开文件生成界面class SaveAction extends AbstractAction /实现保存文本命令public SaveAction() super(保存文本);public void actionPerformed(ActionEvent e) int i = filechooser.show

21、SaveDialog(EditorDemo.this); /显示保存文件对话框if (i = JFileChooser.APPROVE_OPTION) /点击对话框中保存按钮File f = filechooser.getSelectedFile(); /得到选择的文件try FileOutputStream out = new FileOutputStream(f); /得到文件输出流out.write(textPane.getText().getBytes(); /写出文件 catch (Exception ex) ex.printStackTrace(); /输出出错信息如下图:11图图

22、4.3.1 保存文件生成界面保存文件生成界面class ExitAction extends AbstractAction /实现退出命令public ExitAction() super(退出系统);public void actionPerformed(ActionEvent e) System.exit(0); /退出程序class CutAction extends AbstractAction /实现剪切命令public CutAction() super(剪切);public void actionPerformed(ActionEvent e) textPane.cut(); /

23、调用文本窗格的剪切命令class CopyAction extends AbstractAction /实现拷贝命令public CopyAction() super(拷贝);public void actionPerformed(ActionEvent e) textPane.copy(); /调用文本窗格的拷贝命令12class PasteAction extends AbstractAction /实现粘贴命令public PasteAction() super(粘贴);public void actionPerformed(ActionEvent e) textPane.paste()

24、; /调用文本窗格的粘贴命令class AboutAction extends AbstractAction /关于版本命令public AboutAction() super(版本);public void actionPerformed(ActionEvent e) String str=记事本n版本:1.0n n主要功能:实现简单文本编辑。 JOptionPane.showMessageDialog(EditorDemo.this, str); /显示软件信息如下图:图图4.2.5 显示版本界面生成图显示版本界面生成图类向导等功能。第一次启动时提示设置JavaJDK主目录及JDKJava

25、Doc目录,软件自动设置好类路径、编译器及解释器路径,还可以在帮助菜单中使用JDKHelp。4.2.5 系统调试分析系统调试分析 1:窗口调试确定主窗体,设置主窗体的属性,对窗体进行布局,加入所需控件并对控件进行初始化。在完成所有方法的源代码编辑后,对程序进行编译、运行!会出现窗体13如下图:图图4.2.6 编译运行程序生成界面编译运行程序生成界面 2 2:功能调试:功能调试对所有菜单项进行注册监听。在编写触发事件时执行各项操作,包括了一些常用部分的事件处理,实现各功能键的操作。例如 当点击“文件“按钮是显示如下窗口:图图4.2.7 文件按钮实现生成界面文件按钮实现生成界面当需要打开已存在的文

26、件时,点击“打开文本”按钮会出现如下窗口: 14图图4.2.8 打开文件按钮实现生成界面打开文件按钮实现生成界面当输入完文本是要保存的话,点击“保存文本”会出现下面的窗口: 图图4.2.9 输入文本界面输入文本界面 图图4.2.10 保存文本界面保存文本界面依次调试其他功能键及窗口,直至达到符合要求的能实现简易的记事本的功能!154.34.3 本章小结本章小结本章介绍了系统的具体实现和部分关键代码,其中包括如何实现新建文件,打开文件,保存文件,退出系统以及剪切,拷贝,粘贴等具体操作。第第5章章 改进部分改进部分5.15.1加登陆界面加登陆界面 5.1.1登陆界面登陆界面设计设计用户登陆界面图如

27、图如图5.1.1和图5.1.2所示:16用户信息输入信息是否合法用户登录到主界面是弹出错误信息否输入登录界面自动跳转验证图图5.1.1 用户登录模块框图用户登录模块框图图图5.1.25.1.2 用户登陆界面用户登陆界面LoginIn的作用是检测用户登陆的合法性,并确认用户输入了合法的登录名和口令17部分代码: class LoginIn extends JFrame EditorDemo edit;LoginIn login;JTextField f1;JTextField f2;JButton b1;JButton b2;String power;/ 表示权限String imgePath

28、= e:/workspace/GUI/14.gif;JPanel p5;Image img = Toolkit.getDefaultToolkit().createImage(imgePath);LoginIn(EditorDemo edit) this.edit = edit;login = this;Container cp = getContentPane();Label l1 = new Label(用户:);Label l2 = new Label(密码:);JPanel p1 = new JPanel();JPanel p2 = new JPanel();JPanel p3 = n

29、ew JPanel();JPanel p4 = new JPanel();p5 = new JPanel() protected void paintChildren(Graphics g) g.drawImage(img, 0, 0, this);super.paintChildren(g);f1 = new JTextField(15);f2 = new JPasswordField(15);b1 = new JButton(登录);b2 = new JButton(重置);p1.setBackground(Color.orange);p2.add(l1);p2.add(f1);p2.se

30、tBorder(new MatteBorder(0, 0, 0, 0, Color.BLACK);p2.setBackground(Color.ORANGE);p3.add(l2);p3.add(f2);p3.setBackground(Color.ORANGE);p3.setBorder(new MatteBorder(0, 0, 0, 0, Color.BLACK);p4.add(b1);p4.add(b2);18p4.setBorder(new MatteBorder(-3, -3, -3, -3, Color.CYAN);p4.setBackground(Color.ORANGE);p

31、5.setLayout(new FlowLayout(FlowLayout.CENTER, 20, 20);p5.add(p2);p5.add(p3);p5.add(p4);cp.add(p5, BorderLayout.CENTER);b1.addActionListener(new Enter();b2.addActionListener(new ReWrite();addWindowListener(new winClose();class Enter implements ActionListener public void actionPerformed(ActionEvent e)

32、 if (f1.getText().equals(admin) & (f2.getText().equals(123) JOptionPane.showMessageDialog(null, 登录成功!用户权限是adimistrator);power = adminstrator;login.setVisible(false);edit.setVisible(true); else if (f1.getText().equals(snake)& (f2.getText().equals(123456) JOptionPane.showMessageDialog(null, 登录

33、成功!登录成功!用户权限是user);power = adminstrator; elseJOptionPane.showMessageDialog(null, 登录失败,请重新登录!);class ReWrite implements ActionListener public void actionPerformed(ActionEvent e) f1.setText();f2.setText();f1.requestFocus();class winClose extends WindowAdapter public void windowClosing(WindowEvent e) (

34、e.getWindow().dispose();System.exit(0);195.1.2 系统主界面系统主界面登陆成功界面:图图5.25.2登陆成功界面登陆成功界面登陆成功后弹出记事本界面: 图图5.25.2 系统主界面系统主界面20第第6章章 结束语结束语由于计算机的普及,各行业、各单位都有计算机软件系统的应用。该程序所体现的记事本功能为相关记事本的操作和管理带来诸多方便,提高了工作效率。本课程设计的记事本通过在JAVA平台编译、运行源代码,打开计算本窗口,在编辑区进行文本的输入,可以使用剪切、拷贝、粘贴等功能键,当文本输入完毕后点击“文件”菜单,选择下拉菜单中的“保存文本”打开“保存”

35、窗口,选择保存文件的根目录进行保存。当需要关闭窗口时可通过“文件”菜单下的“退出系统”选项,或者选择“工具栏”中的“退出系统”按钮,也可以直接点击窗口右上角的关闭图标进行关闭。经过java记事本的课程设计,收获到了很多,加深了对Java语言的理论知识的理解;更加熟练的掌握了Java语言的设计能力并且有了实践经验;在设计过程中,学到了许多在课堂上没有教授的知识;加强了对Java语言的学习兴趣和好感。21附录附录 源代码源代码程序源代码:/记事本import java.awt.BorderLayout;import java.awt.Color;import java.awt.Container;

36、import java.awt.FlowLayout;import java.awt.Font;import java.awt.Graphics;import java.awt.Image;import java.awt.Label;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.io.Fil

37、e;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import javax.swing.AbstractAction;import javax.swing.Action;import javax.swing.JButton;import javax.swing.JFileChooser;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JMenu;22import jav

38、ax.swing.JMenuBar;import javax.swing.JMenuItem;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;import javax.swing.JTextPane;import javax.swing.JToolBar;import javax.swing.border.MatteBorder;import javax.swing.text.DefaultEditor

39、Kit.CopyAction;import javax.swing.text.DefaultEditorKit.CutAction;import javax.swing.text.DefaultEditorKit.PasteAction;import javax.swing.text.DefaultStyledDocument;public class EditorDemo extends JFrame JTextPane textPane = new JTextPane(); / 文本窗格,编辑窗口JLabel statusBar = new JLabel(); / 状态栏JFileChoo

40、ser filechooser = new JFileChooser(); / 文件选择器public EditorDemo() / 构造函数super(简易记事本); / 调用父类构造函数Action actions = / Action数组,各种操作命令 new NewAction(), new OpenAction(), new SaveAction(), new CutAction(),new CopyAction(), new PasteAction(), new AboutAction(),new ExitAction(), ;setJMenuBar(createJMenuBar(

41、actions); / 设置菜单栏Container container = getContentPane(); / 得到容器container.add(createJToolBar(actions), BorderLayout.NORTH); / 增加工具栏container.add(textPane, BorderLayout.CENTER); / 增加文本窗格container.add(statusBar, BorderLayout.SOUTH); / 增加状态栏setSize(500, 400); / 设置窗口尺寸/setVisible(true); / 设置窗口可视setDefaul

42、tCloseOperation(JFrame.EXIT_ON_CLOSE); / 关闭窗口时退出程序private JMenuBar createJMenuBar(Action actions) / 创建菜单栏JMenuBar menubar = new JMenuBar(); / 实例化菜单栏JMenu menuFile = new JMenu(文件(F); / 实例化菜单JMenu menuEdit = new JMenu(编辑(E);JMenu menuFormat = new JMenu(格式(O);JMenu menuFind = new JMenu(查找(V);23JMenu me

43、nuAbout = new JMenu(帮助(H);menuFile.add(new JMenuItem(actions0); / 增加新菜单项menuFile.add(new JMenuItem(actions1);menuFile.add(new JMenuItem(actions2);menuFile.addSeparator();menuFile.add(new JMenuItem(actions7);menuEdit.add(new JMenuItem(actions3);menuEdit.add(new JMenuItem(actions4);menuEdit.add(new JM

44、enuItem(actions5);menuAbout.add(new JMenuItem(actions6);menubar.add(menuFile); / 增加菜单menubar.add(menuEdit);menubar.add(menuFormat);menubar.add(menuFind);menubar.add(menuAbout);return menubar; / 返回菜单栏private JToolBar createJToolBar(Action actions) / 创建工具条JToolBar toolBar = new JToolBar(); / 实例化工具条for

45、 (int i = 0; i actions.length; i+) JButton bt = new JButton(actionsi); / 实例化新的按钮bt.setRequestFocusEnabled(false); / 设置不需要焦点bt.setFont(new Font(宋体, Font.PLAIN, 12);bt.setBackground(Color.pink);toolBar.add(bt); / 增加按钮到工具栏return toolBar; / 返回工具栏class NewAction extends AbstractAction / 新建文件命令public NewA

46、ction() super(新建文本);public void actionPerformed(ActionEvent e) textPane.setDocument(new DefaultStyledDocument(); / 清空文档class OpenAction extends AbstractAction / 打开文件命令public OpenAction() super(打开文本);24public void actionPerformed(ActionEvent e) int i = filechooser.showOpenDialog(EditorDemo.this); / 显

47、示打开文件对话框if (i = JFileChooser.APPROVE_OPTION) / 点击对话框中打开选项File f = filechooser.getSelectedFile(); / 得到选择的文件try InputStream is = new FileInputStream(f); / 得到文件输入流textPane.read(is, d); / 读入文件到文本窗格 catch (Exception ex) ex.printStackTrace(); / 输出出错信息class SaveAction extends AbstractAction / 保存命令public Sa

48、veAction() super(保存文本);public void actionPerformed(ActionEvent e) int i = filechooser.showSaveDialog(EditorDemo.this); / 显示保存文件对话框if (i = JFileChooser.APPROVE_OPTION) / 点击对话框中保存按钮File f = filechooser.getSelectedFile(); / 得到选择的文件try FileOutputStream out = new FileOutputStream(f); / 得到文件输出流out.write(t

49、extPane.getText().getBytes(); / 写出文件 catch (Exception ex) ex.printStackTrace(); / 输出出错信息class ExitAction extends AbstractAction / 退出命令public ExitAction() super(退出系统);public void actionPerformed(ActionEvent e) 25System.exit(0); / 退出程序class CutAction extends AbstractAction / 剪切命令public CutAction() sup

50、er(剪切);public void actionPerformed(ActionEvent e) textPane.cut(); / 调用文本窗格的剪切命令class CopyAction extends AbstractAction / 拷贝命令public CopyAction() super(拷贝);public void actionPerformed(ActionEvent e) textPane.copy(); / 调用文本窗格的拷贝命令class PasteAction extends AbstractAction / 粘贴命令public PasteAction() supe

51、r(粘贴);public void actionPerformed(ActionEvent e) textPane.paste(); / 调用文本窗格的粘贴命令class AboutAction extends AbstractAction / 关于选项命令public AboutAction() super(版本);public void actionPerformed(ActionEvent e) String str = 简易记事本nn版本:1.0n作者:斌n主要功能:实现简单文本编辑。;JOptionPane.showMessageDialog(EditorDemo.this, str

52、); / 显示软件信息26public static void main(String args) LoginIn log = new LoginIn(new EditorDemo();log.setTitle(系统登录);log.setSize(360, 250);log.setVisible(true);class LoginIn extends JFrame EditorDemo edit;LoginIn login;JTextField f1;JTextField f2;JButton b1;JButton b2;String power;/ 表示权限String imgePath = e:/workspace/GUI/14.gif;JPanel p5;Image img = Toolkit.getDefaultToolkit().createImage(imgePath);LoginIn(EditorDemo edit) this.edit = edit;login = this;Container cp = getContentPane(); /初始化一个容器,用来在容器上添加一些控件Label l1 = new Label(用户:);Label l2 = new Label(密码:);JPanel p1 = new JPane

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论