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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

文件管理器JAVA课程设计报告文档.docx

1、课程设计报告学院、系:专业名称:网络工程课程设计科目Java 程序课程设计学生姓名:指导教师:完成时间:2011 年 3 月-5 月文件管理器一、设计任务与目标编写一个窗口程序,该程序可以打开硬盘中的某个目录,并可以打开目录中某个文件进行浏览。设计要求:1) 在界面上设计两个文本区,一个用于显示打开的硬盘上的目录,另一用于打开所选中该目录中的文件。2) 设计文本框,用于显示当前的目录位置*3)设计一个“压缩”按钮,和一个指定目录文本框,将选中的这个文件压缩到指定的目录中。二、方案设计与论证对于题目的要求 1),使用布局管理器可以设计两个文本区。对于题目要求 2),使用 JTextField 文

2、本框组件可以实现。对于题目要求 3),使用 JButton 按钮组件实现。对于此题的设计要求,我从总体上进行了构思。运用 Java Swing 高级组件中的 JTree 树组件实现在图形用户界面(GUI)下文件浏览器的编制。Javax.swing.JTree 类提供了组件的功能,可以方便地显示多层次的数据, 比如 Windows 文件管理器中的文件列表就是有树状结构实现的。本题设计要求就是 Windows 文件管理器的工作。树组件有节点组成,对树组件的操作实际上就是对树上的节点做添置画叶的操作。树中最基本的对象是节点。使用 JTree 的步骤:(1) 创建树(2) 对节点的选择做出响应(3)

3、自定义树的外观表现(4) 动态改变一棵树(5) 创建树的数据模型(6) 懒加载孩子(7) 如何写 expansion linstener(8) 如何写 tree-will-expand listener利用 JTree 类,你可以显示等级体系的数据 Jtree 垂直显示它的数据。树中显示的每一行包含一项数据,称之为节点( node )。每颗树有一个根节点( root node ),其他所有节点是它的子孙。默认情况下,树只显示根节点,但是你可以设置改变默认显示方式。一个节点可以拥有孩子也可以不拥有任何子孙。我们称那些可以拥有孩子(不管当前是否有孩子)的节点为“分支节点”( branch node

4、s ),而不能拥有孩子的节点为“叶子节点”( leaf nodes)。分支节点可以有任意多个孩子。通常,用户可以通过点击实现展开或者折叠分支节点,使得他们的孩子可见或者不可见。默认情况下,除了根节点以外的所有分支节点默认呈现折叠状态。程序中,通过监听 tree expansion 或者tree-will-expand 事件可以检测分支节点的展开状态。三、程序框图或流程图,程序清单与调用关系开始初始化窗口各个控件添加控件事件监听构造系统目录树模块判断系统是否有 WINRAR把 rar.exe 拷贝到系统目录下并配置环境窗体初始模块加载NO系统关联打开文件应用当前配置环境对窗口控件进行布局压缩模块

5、加载显示窗口关于对话框构造及其刷新文件树添加目录根节点遍历添加盘符节点添加节点选择事件监听事件监听关闭窗体结束获取文件对象读取文件属性及其摘要,显示在右区域多线程遍历子节点把子节点添加到树中添加节点展开事件监听设置目录树的显示样式树节点选择事件捕获普通控件事件捕获,例如:单击按钮启用不同功压缩文件树节点展开事件捕获刷新文件树调用 WINRAR 环境中的rar.exe 进行压缩获取目标文件位置获取文件位置位于 FileViewe 类中的构造函数中 (FileViewer.java)位于 FileViewer 类中 Main 方法中(FileViewer.java)其中普通事件监听方法位于 Fil

6、eViewe 类中,树的两个特殊事件监控类位的于DirExpansionListener 和 DirSelectionListener 两个内部类中(FileViewer.java) 位于 Compress 类中 (Compress.java)注:其中 FileNode 类(FileNode.java)为文件节点类,故不在流程范围内 FileViwer 流程图version 1.0一、 全部源程序清单package jluzh.fileViewer;import java.awt.*; import java.awt.event.*; import java.io.*;import java.

7、text.DateFormat;import javax.swing.*; import javax.swing.tree.*; import javax.swing.event.*;public class FileViewer extends JFrameimplements ActionListener/* FileView 程序的主窗口*/private static final long serialVersionUID = 1L;/Eclipse 自动生成的序列化版本 id 号private JTreem_tree;/文件夹树private DefaultTreeModel m_m

8、odel;/默认树显示模式private JTextArea m_rightTextArea;/右边的文本显示区域private JTextField m_PathDisplay;/底部的路径显示区域private JButton m_openBtn;/打开文件按钮private JButton m_compressBtn;/压缩文件按钮private JButton m_refreshBtn;/刷新按钮private JButton m_aboutBtn;private String m_szFileExcutePath;/文件打开绝对路径public FileViewer()束程序supe

9、r(FileViewer);/设置窗口标题this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /在关闭窗口时候结/*/ 初始化成员变量/*/*其中 m_tree 的初始化在构造系统目录树中*/*其中 m_model 的初始化在构造系统目录树中*/m_rightTextArea = new JTextArea(); m_rightTextArea.setEditable(false);/右面文本显示区域不可写m_PathDisplay = new JTextField(); m_PathDisplay.setEditable(false);/

10、下面路径显示区域不可写/初始化按钮并添加事件响应m_openBtn = new JButton(打开文件利用系统关联打开文件);m_openBtn.addActionListener(this);m_compressBtn = new JButton(压缩配置 winrar 成功时可用);m_compressBtn.addActionListener(this); m_refreshBtn = new JButton(刷新);m_refreshBtn.addActionListener(this); m_aboutBtn = new JButton(关于 FileViewer);m_about

11、Btn.addActionListener(this); m_szFileExcutePath = null;/初始化文件打开路径/*/构造系统目录树利用树自带的 TreeExpansionListener 对树进行Expansion 和 Selection 响应处理/*DefaultMutableTreeNode top;/树形目录的根节点DefaultMutableTreeNode node;/系统的盘符的节点File roots = File.listRoots();/列出可用的文件系统盘符数组);/构造根节点,后面加空格为了增大左面板初始面积top=newDefaultMutableT

12、reeNode(我的电脑/遍历所有盘符,增加到 top 的孩子节点里for (int k=0; kroots.length; k+)node = new DefaultMutableTreeNode(new FileNode(rootsk); top.add(node);node.add( new DefaultMutableTreeNode(new Boolean(true);/在构造的孩子节点下构造初始子节点,节点为 true,使成为能扩展状态m_model = new DefaultTreeModel(top);/设置默认模式根节点为 top m_tree = new JTree(m_m

13、odel);/按 m_model 模式构造文件树m_tree.putClientProperty(JTree.lineStyle, Angled);/设置客户区样式m_tree.addTreeExpansionListener(new DirExpansionListener(); /设置树展开事件响应处理m_tree.addTreeSelectionListener(new DirSelectionListener(); /设置树选择事件响应处理为单选编辑m_tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);/设置选择模式m_tree.setEditable(false);/设置树为 不可/*

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

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