MFC模拟 Windows 文件可视化系统(中)

简介: MFC模拟 Windows 文件可视化系统

七、项目建立整个过程(图解)


1. 新建项目


新建MFC项目,






将默认生成的确定和取消按钮和文本控件删除



2. 控件添加


2.1 添加设置相关属性


调整好对话框的大小


在对话框中添加两个GroupBox控件,并将他们的Caption属性分别改为“文件目录”和“文件列表”


添加树形控件Tree Control,设置相关属性


添加列表控件List Control,设置相关属性


添加两个按钮控件Button,分别实现返回和转到的功能


添加下拉列表框控件Combo Box,设置相关属性


设置好后如下图:



在设置相关控件属性



2.2 设置控件变量


设置各个控件的变量,进入类向导,成员变量中添加,如下图



2.3 设置控件事件


设置各个控件的事件,例如combox的选项改变事件



全部添加完成后才能进行相应功能的代码编辑:



运行一下,非常完美



3. 添加右键菜单栏




添加如下两个菜单栏:




然后改名什么的不用说了:



4. 消息响应函数设置


4.1 设置函数


其中窗体控件事件在设置中已经自动生成,需要自己添加右键菜单栏的消息相应函数



代码如下:


// 窗体控件绑定事件:事件设置,系统自动生成
afx_msg void OnBnClickedBack();
afx_msg void OnBnClickedEnter();
afx_msg void OnCbnSelchangeDirpath();
afx_msg void OnTvnItemexpandedTree(NMHDR *pNMHDR, LRESULT *pResult);
afx_msg void OnTvnKeydownTree(NMHDR *pNMHDR, LRESULT *pResult);
afx_msg void OnTvnSelchangedTree(NMHDR *pNMHDR, LRESULT *pResult);
afx_msg void OnNMRClickList(NMHDR *pNMHDR, LRESULT *pResult);
// 右键菜单栏绑定事件
afx_msg void OnOpen();
afx_msg void OnCopy();
afx_msg void OnDelete();
afx_msg void OnNewfile();
afx_msg void OnTxt();
afx_msg void OnDocx();
afx_msg void OnRefresh();
afx_msg void OnPaste();


4.2 绑定消息响应


进入Dlg.cpp中,找到BEGIN_MESSAGE_MAP,在后面加入你的消息响应函数,实现函数与事件消息绑定。


如下图,找到它,添加了如下代码:



5. 项目逻辑设计


5.1 其他函数功能


在头文件中设计添加其他功能函数,如下图:



代码如下:


// 获取系统分区驱动器字符串信息
void GetLogicalDrive(HTREEITEM hParent);
// 获取驱动地址
void GetDriveDir(HTREEITEM hParent);
// 获取树项目全根路径
CString GetFullPath(HTREEITEM hCurrent);
// 添加子目录
void AddSubDir(HTREEITEM hParent);
// 刷新/更新ListCtrl
void Refresh(CString str);
// 删除文件夹
bool DeleteFolder(LPCTSTR pstrFolder);
// 目录是否存在
bool IsDirectory(LPCTSTR pstrPath);
// 复制到剪贴板
void CopyToClipboard(CString dirPath);
// 粘贴文件 
void PasteToFile(CString dirPath);
相关文章
|
4月前
|
安全 Windows
永久关闭 Windows 11 系统更新
永久关闭 Windows 11 系统更新
258 0
|
1月前
|
监控 搜索推荐 开发工具
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
156 2
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
|
3月前
|
安全 Windows
【Azure Cloud Service】在Windows系统中抓取网络包 ( 不需要另外安全抓包工具)
通常,在生产环境中,为了保证系统环境的安全和纯粹,是不建议安装其它软件或排查工具(如果可以安装,也是需要走审批流程)。 本文将介绍一种,不用安装Wireshark / tcpdump 等工具,使用Windows系统自带的 netsh trace 命令来获取网络包的步骤
106 32
|
3月前
|
存储 负载均衡 Java
如何配置Windows主机MPIO多路径访问存储系统
Windows主机多路径(MPIO)是一种技术,用于在客户端计算机上配置多个路径到存储设备,以提高数据访问的可靠性和性能。本文以Windows2012 R2版本为例介绍如何在客户端主机和存储系统配置多路径访问。
217 13
如何配置Windows主机MPIO多路径访问存储系统
|
4月前
|
Windows
Windows系统命令dir使用详解
Windows系统命令dir使用详解
303 2
|
4月前
|
存储 开发框架 .NET
Windows IIS中asp的global.asa全局配置文件使用说明
Windows IIS中asp的global.asa全局配置文件使用说明
79 1
|
4月前
|
Windows
.NET 隐藏/自定义windows系统光标
【10月更文挑战第20天】在.NET中,可以使用`Cursor`类来控制光标。要隐藏光标,可将光标设置为`Cursors.None`。此外,还可以通过从文件或资源加载自定义光标来更改光标的样式。例如,在表单加载时设置`this.Cursor = Cursors.None`隐藏光标,或使用`Cursor.FromFile`方法加载自定义光标文件,也可以将光标文件添加到项目资源中并通过资源管理器加载。这些方法适用于整个表单或特定控件。
|
4月前
|
Apache 数据中心 Windows
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
|
4月前
|
域名解析 缓存 网络协议
Windows系统云服务器自定义域名解析导致网站无法访问怎么解决?
Windows系统云服务器自定义域名解析导致网站无法访问怎么解决?
|
4月前
|
运维 网络安全 虚拟化
Windows系统镜像检测修复建议
Windows系统镜像检测修复建议