C# winform制作文件分类管理器gui

期末数据结构大作业
程序主要分为以下六大功能:
一、创建及输出目录树;
通过创建树结构体,用顺序表或是链表来实现树的创建,获取需要进行分类的文件夹,先创建一棵空树,然后通过findfirstfile函数来递归遍历文件夹来创建树的结点;
二、查找结点;
通过输入需要查找文件的名称来定位查找到其对应的的路径;
三、添加结点;
在实际目录增加一个新的空文件夹,在树中创建一个新的结点;
四、删除结点
删除实际目录中的文件或文件夹,在树中删除结点;
五、复制/移动结点
实际目录中,复制/移动文件,树结构中复制/移动结点;
六、重命名结点
对实际目录和树结构中的名字属性进行重新命名。

设计初稿
初稿依照出现的六大功能制作了六个按钮,分别模拟点击动作,在下部分设计了树的展示区域,当中部选择了相应文件夹后,下部分展示区域会自动刷新展示出当前文件夹的文件树供用户查看,用户可以根据自己的需要选择上部分按钮对树进行操作,每次操作后即时更新下部分树。
在这里插入图片描述
最终稿
在这里插入图片描述
在进行实际开发后,对界面的布局进行进一步调整,并添加了更多的功能区来适配。以2.7.1.2为例,分为四个区进行讲解。
a、树创建及展示区
在②区点击“选择文件夹”,在弹出的弹窗选择相应文件夹后即可显示以下界面。
在这里插入图片描述

当选中树结点时,②区“所在地址”显示的是选中地址的绝对路径,会随着选中结点的不同而改变①区下部“选中结点”会展示出当前所选择结点的名字(含后缀名),这个区域的存在是为了重命名、删除、以及查找的输入更加方便。
④区的“展开目录”及“收起目录”点击可对展示的树进行一键展开所有树和收起树。
b、功能集中区
在这里插入图片描述

在①区,输入需要查找的子节点名称至“查找文件”文本框,点击确定,即可在树展示区对其定位(标色部分),此时可以点击标色部分,所在地址便会更新,可得到该文件夹的绝对路径。

①区中部对于不同的选择,输入框前的提示框会不同
在这里插入图片描述
在这里插入图片描述

对上述输入框输入相应的结点名称即可实现对应的操作,需要注意的是输入的名称都需要带上后缀名。
c、皮肤选择区
在这里插入图片描述

即可点击可一键换肤。
2.7.3 界面美化
使用使用IrisSkin2.dll来美化WinForm程序界面,进行部分功能适配然后添加相应的饮用以及文件即可实现。

在这里插入图片描述
主要使用了treeview、textbox、label、button控件。
部分代码

public Form1()
        {
   
            InitializeComponent();
            treeView1.AllowDrop = true;
            treeView1.ItemDrag += new ItemDragEventHandler(treeView1_ItemDrag);
            treeView1.DragEnter += new DragEventHandler(treeView1_DragEnter);
            treeView1.DragDrop += new DragEventHandler(treeView1_DragDrop);
        }
        void treeView1_DragDrop(object sender, DragEventArgs e)
        {
   
            TreeNode moveNode = (TreeNode)e.Data.GetData("System.Windows.Forms.TreeNode");
            //根据鼠标坐标确定要移动到的目标节点
            Point pt;
            TreeNode targeNode;
            pt = ((TreeView)(sender)).PointToClient(new Point(e.X, e.Y));
            targeNode = this.treeView1.GetNodeAt(pt);
            //如果目标节点无子节点则添加为同级节点,反之添加到下级节点的未端
            TreeNode NewMoveNode = (TreeNode)moveNode.Clone();
            if (targeNode.Nodes.Count == 0)
            {
   
                targeNode.Parent.Nodes.Insert(targeNode.Index, NewMoveNode);
            }
            else
            {
   
                targeNode.Nodes.Insert(targeNode.Node
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
学生个人文件管理系统 v2.0 A.声明: 1.非源代码。 2.有些用户没有设置自己的数据库服务器就直接登录或者注册,这样是不会成的, 请选择自定义服务器,然后填入自己的IP,数据库用户名以及密码,因为默认服 务器的IP是192.168.0.252. 3.暂不支持拖拽功能(将文件拖进去就能上传) 4.每隔10分钟系统会锁定一次,以防止其他用户恶意操作数据,需解锁请输入自己 的登录密码。【暂不支持设置间隔时间或者设置是否采取锁定策略】 5.暂不支持修改上传后的文件的属性(类别等) 6.在Win7上运行时需要管理员权限,请以管理员方式运行本程序。 B.新版特性: 1.修正了大文件上传或下载时服务器超时的Bug. 可上传500M以内的单个文件.(在空间大小足够的前提下) 2.修正了客户端上传文件的时间与服务器时间不同步的Bug, 同时在充分考虑服务器性能的前提下,给客户端提供了正 确的时间。 3.新增数据库压缩功能,针对数据库日志文件动辄上G的问题 提供了解决方案,使客户端用户使用更流畅。(管理员功能) 4.(2011-03-14)纠正了数据创建时错误,适应SQLServer不同 版本的数据库;纠正了在SQLServer下不同版本数据库备份时路径 错误问题。 5.(2011-03-14)纠正了程序中密码验证不区分大小写的错误。 6.(2011-03-18) 纠正了系统锁定后无法解锁的错误 2011-03-18 23:20 南充市扎针高手 李泽波
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值