ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:654.50KB ,
资源ID:2234866      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2234866.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java课程设计报告记事本.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Java课程设计报告记事本.docx

1、Java课程设计报告记事本Java课程设计报告专 业: 班 级: 姓 名: 学 号: 系 部: 目 录 2正 文 3一、设计内容和要求 3二、设计思路 4五、设计体会小结 21正 文Java文档编辑器是一个允许修改DefaultStyledDocument对象的应用程序。这些对象用于管理Swing文本组件(例如JTextPane和JTextArea)的内容。JTextPane用于显示DefaultStyledDocument的内容。通过改变与DefaultStyledDocument相关联的Style对象,能够改变 DefaultStyledDocument在 JTextPane中的显示方式。

2、此应用程序也能够将DefaultStyledDocument存储到磁盘上和读入以前存储的DefaultStyledDocument。读、写、操纵DefaultStyledDocument的所有选项都可以通过使用菜单项来实现。当这些菜单项被选中时,它们生成事件。使用ActionListener, ItemListener, UndoableEditListener和MenuDragMouseListener对象来处理这些事件。要求通过课程设计,使学生将掌握的Java语言基本知识应用于实践中,在实际练习中加深对Java语言各方面的知识和概念的理解,掌Java程序设计中编程方法、编程思想,深入理解J

3、ava语言在实际中的应用。要求学生动手上机编程,掌握Java程序设计思想和设计方法,设计实现一个简单Java文档编辑器,该编辑器由打开文件、新建文件、保存、复制、剪切、粘贴、撤销、删除等基本文本操作功能组件组成,有能力和时间的同学还可以设计实现如查找、时间、设置字体颜色、格式等功能,右键菜单响应,快捷键等功能,进一步加强自己的编程能力和编程思想。二、设计思路本程序设计主要大体流程为:开始,启动MainFunction的主函数main(),调用Loading方法启动dluThread 线程登陆界面,dluThread 线程结束后调用 MiniText()方法,调用 initTextPane(方法

4、初始化面板,调用initMenu()方法初始化菜单,调用initAboutDialog()方法初始化关于对话框,调用initToolBar()方法初始化工具栏,调用initRightKey()方法初始化右键设置,启动runtime线程创建动态时间按钮,点击文件菜单里的退出按钮或关闭窗口退出。基本流程图如下:图1基本流程图本Java文本编辑器功能设计如下:图2基本功能图三、具体实现3.1类设计主要有四个类:1.类MiniText ,包括 initTextPane方法初始化面板, initMenu()方法初始化菜单, initAboutDialog()方法初始化关于对话框, initToolBar

5、()方法初始化工具栏, initRightKey()方法初始化右键设置,等方法。类成员如下:2.类Loading (实现登陆)类成员如下: 3.类runtime (实现时间同步)类成员如下:4.类MainFunction (包含主函数)类成员如下:3.2主要功能代码实现(1).登陆界面class Loading extends JWindow implements Runnable Thread dluThread=null; private JProgressBar progress; public Loading() setCursor(Cursor.getPredefinedCursor

6、(Cursor.WAIT_CURSOR);/设置光标为等待状态 JPanel dlu = new JPanel(new BorderLayout(); URL url = getClass().getResource(/images/loading.jpg); if(url != null) dlu.add(new JButton(new ImageIcon(url), BorderLayout.CENTER); progress = new JProgressBar(1,100); progress.setStringPainted(true); progress.setBorderPain

7、ted(true); progress.setBackground(Color.white); progress.setForeground(Color.green); dlu.add(progress,BorderLayout.SOUTH); setContentPane(dlu); /设置窗口属性为登陆面板属性 Dimension screen = getToolkit().getScreenSize(); pack(); /显示登陆界面 setLocation(screen.width/4,screen.height/4); /设置登陆界面始终在屏幕中间显示 public void st

8、art() / this.toFront(); dluThread=new Thread(this); dluThread.start(); public void run() show(); try for (int i=0;i100;i+) Thread.sleep(100); progress.setValue(progress.getValue() + 1); progress.setString(欢迎进入迷你编辑,请稍后. . +i+%); catch (Exception ex) ex.printStackTrace(); dispose();/关闭登陆界面 (2). 时间标签 c

9、lass runtime extends JButton implements Runnable Thread datetime=null; public runtime() public void run() for(;) /java.util.Date timeer=new java.util.Date(); Calendar now=Calendar.getInstance(); int year1=now.get(Calendar.YEAR); int month1=now.get(Calendar.MONTH); int day1=now.get(Calendar.DAY_OF_MO

10、NTH); int hour1=now.get(Calendar.HOUR); int minute1=now.get(Calendar.MINUTE); int sec=now.get(Calendar.SECOND); setText(year1+年+month1+月+day1+日 +hour1+:+minute1+:+sec); /System.out.println(now.get(Calendar.DAY_OF_MONTH)-60); try Thread.currentThread().sleep(1000); catch(InterruptedException e) (3).

11、右键的实现: void initRightKey ()filepopup=new JPopupMenu();uundo=new JMenuItem(撤消(U);uundo.setMnemonic(U);ccut=new JMenuItem(剪切(T);ccut.setMnemonic(T);ccopy=new JMenuItem(复制(C);ccopy.setMnemonic(C);ppaste=new JMenuItem(粘贴(V);ppaste.setMnemonic(V);ddelete=new JMenuItem(删除(D);ddelete.setMnemonic(D);sselect

12、all=new JMenuItem(全选(A);sselectall.setMnemonic(A);filepopup.add(uundo);filepopup.addSeparator();filepopup.add(ccut);filepopup.add(ccopy);filepopup.add(ppaste);filepopup.add(ddelete);filepopup.addSeparator();filepopup.add(sselectall);uundo.addActionListener(action);ccut.addActionListener(action);ccop

13、y.addActionListener(action);ppaste.addActionListener(action);ddelete.addActionListener(action);sselectall.addActionListener(action);text.addMouseListener(new MouseAdapter() public void mousePressed(MouseEvent event) checkForTriggerEvent(event); public void mouseReleased(MouseEvent event) checkForTri

14、ggerEvent(event); public void checkForTriggerEvent(MouseEvent event) if(event.isPopupTrigger() filepopup.show(event.getComponent(),event.getX(),event.getY(); ); (4).打开、保存、复制、粘贴、撤销等功能事件响应实现:/事件处理 ActionListener action = new ActionListener() public void actionPerformed(ActionEvent e) JMenuItem mi = (JMenuItem)e.getSource(); String id = mi.getText(); if(id.equals(新建) Date date=new Date(); text.setText(date.toString(); file = null; else if(id.equals(打开.) if(file != null) filechooser.setSelectedFile(file);/为用户选择文件提供了一种简单的机制 int returnVal = filechooser.showO

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1