📄 myfilemanagement.h
字号:
// fileName: myFileManagement.h
// by: zhnyong@21cn.com
// 该文件为程序的自定义头文件,包括Windows CE系统头文件、
// 用户定义的常量、自定义类型和过程原型等
// 所有的Windows CE API程序必需包括的头文件
#include <windows.h>
// 命令控件栏的头文件
#include <commctrl.h>
// 通用对话框的头文件
#include <commdlg.h>
// Go: 可以在此处添加你所需要的其他头文件
// 返回数组x的元素数
#define dim(x) (sizeof(x)/sizeof(x[0]))
// 定义消息ID号与消息处理过程的结构体
typedef struct
{
UINT uCode;
LRESULT (*functionName)(HWND, UINT, WPARAM, LPARAM);
}MessageProc;
// 定义菜单或控件的命令ID号与命令处理过程的结构体
typedef struct
{
UINT uCode;
LRESULT (*functionName)(HWND,HWND,WORD,WORD);
}CommandProc;
// 定义对话框消息ID号与消息处理过程关联的结构体
typedef struct
{
UINT uCode;
BOOL (*functionName)(HWND, UINT, WPARAM, LPARAM);
}dlgMessageProc;
// 定义对话框控件的命令ID号与命令处理过程的结构体
typedef struct
{
UINT uCode;
BOOL (*functionName)(HWND,HWND,WORD,WORD);
}dlgCommandProc;
// 宏定义一个全局正整型标号,这里用于表示窗口顶部的命令栏控件ID号
#define IDC_CMDBAR 1
// 定义全局常量字符串作为主窗口类名
const TCHAR mainClassName[]=TEXT("myFileManagement");
// 注册窗口类
int registerWnd(HINSTANCE);
// 创建主窗口并显示
int showMainWnd(HINSTANCE, LPWSTR, int);
// 退出主窗口,即退出程序
int quitMainWnd(HINSTANCE, int);
// 主窗口过程的原型,窗口过程必然为回调函数
LRESULT CALLBACK mainWndProc(HWND, UINT, WPARAM, LPARAM);
// 主窗口收到WM_CREATE消息后的处理过程原型
LRESULT goCreateMain(HWND, UINT, WPARAM, LPARAM);
// 主窗口收到WM_PAINT消息后的处理过程原型
LRESULT goPaintMain(HWND, UINT, WPARAM, LPARAM);
// 主窗口收到WM_DESTROY消息后的处理过程原型
LRESULT goDestroyMain(HWND, UINT, WPARAM, LPARAM);
// 主窗口收到WM_CLOSE消息后的处理过程原型
LRESULT goCloseMain(HWND, UINT, WPARAM, LPARAM);
// 主窗口收到WM_ACTIVATE消息后的处理过程原型
LRESULT goActivateMain(HWND, UINT, WPARAM, LPARAM);
// 主窗口收到WM_COMMAND消息后的处理过程原型
LRESULT goCommandMain(HWND, UINT, WPARAM, LPARAM);
// 宏定义子窗口ID号
#define IDW_FILECHILD 2
// 定义常量字符串作为fileChildWnd子窗口类名
const TCHAR strFileChildClassName[]= TEXT("fileChildWnd");
// 注册子窗口类
int registerFileChildWnd(HINSTANCE);
// 子窗口过程原型,用于子窗口的消息处理,被系统直接调用
LRESULT CALLBACK fileChildWndProc(HWND, UINT, WPARAM, LPARAM);
// 子窗口收到WM_CREATE消息后的处理过程原型
LRESULT goCreateFileChildWnd(HWND, UINT, WPARAM, LPARAM);
// 子窗口收到WM_PAINT消息后的处理过程原型
LRESULT goPaintFileChildWnd(HWND, UINT, WPARAM, LPARAM);
// 子窗口收到自定义消息MYWM_MENUCLICK后的处理过程原型
LRESULT goMenuclickChildWnd(HWND, UINT, WPARAM, LPARAM);
// 自定义消息
#define MYWM_MENUCLICK (WM_USER + 1)
// 自定义控件的结构体类型
typedef struct{
TCHAR *szTitle;
int nID;
TCHAR *szClass;
DWORD dwStyle;
int x;
int y;
int xw;
int yh;
}CONTROLSTRUCT;
// 宏定义了子窗口上放置的控件ID号
#define IDC_OPENFILEATCHILDWND 30
#define IDC_SAVEFILEATCHILDWND 31
#define IDC_CLEARDISPLAY 32
#define IDC_FILECONTENTEDIT 33
// 清空显示控件IDC_CLEARDISPLAY的处理过程原型
LRESULT goClearDisplayChildCmd(HWND,HWND, WORD, WORD);
// 宏定义图标、菜单和子菜单的ID号
#define ID_ICON 3
#define ID_MENU 4
#define ID_DLGICON 5
#define ID_SAVEFILEICON 6
#define ID_OPENFILEICON 7
#define IDM_OPENTEXTFILE 50
#define IDM_SAVETEXTFILE 51
#define IDM_ABOUT 54
#define IDM_EXIT 55
#define IDM_COPYFILE 56
#define IDM_MOVEFILE 57
// 宏定义对话框资源ID号
#define IDD_ABOUTDLG 58
#define IDD_COPYFILE 59
#define IDD_MOVEFILE 60
// 以下六个过程原型为菜单项被单击后的处理过程原型,这些过程体在子窗口文件中
// 菜单号IDM_OPENTEXTFILE被点击后的处理过程原型
LRESULT goOpenTextFileChildCmd(HWND,HWND, WORD, WORD);
// 菜单号IDM_SAVETEXTFILE被点击后的处理过程原型
LRESULT goSaveTextFileChildCmd(HWND, HWND, WORD, WORD);
// 菜单号IDM_ABOUT被点击后的处理过程原型
LRESULT goAboutFileChildCmd(HWND, HWND, WORD, WORD);
// 菜单号IDM_COPYFILE被点击后的处理过程原型
LRESULT goCopyFileChildCmd(HWND,HWND,WORD,WORD);
// 菜单号IDM_MOVEFILE被点击后的处理过程原型
LRESULT goMoveFileChildCmd(HWND, HWND, WORD, WORD);
// “关于”对话框窗口过程原型,用于对话框窗口的消息处理,被系统直接调用
BOOL CALLBACK aboutDlgProc(HWND, UINT, WPARAM, LPARAM);
// “关于”对话框收到WM_COMMAND消息后的处理过程原型
BOOL goCommandAboutDlg(HWND, UINT, WPARAM, LPARAM);
// “复制文件”对话框相关的按钮ID号宏定义
#define IDC_INPUTSOURCEFILE 100
#define IDC_SOURCEFILENAME 101
#define IDC_INPUTTARGETDIR 102
#define IDC_TARGETDIRNAME 103
#define IDC_TARGETFILENAME 104
#define IDC_COPYTO 105
#define IDC_EXITDLG 106
#define IDC_MOVETO 107
// “复制文件”对话框窗口过程原型,用于该对话框窗口的消息处理,被系统直接调用
BOOL CALLBACK copytoDlgProc(HWND, UINT, WPARAM, LPARAM);
// “复制文件”对话框窗口收到WM_COMMAND消息后的处理过程原型
BOOL goCommandCopyToDlg(HWND, UINT, WPARAM, LPARAM);
// “复制文件”对话框中点击控件“源文件”、“目标路径”、“复制”和“退出”时的命令处理过程原型
BOOL goInputsourcefileCopyToDlgCmd(HWND, HWND, WORD, WORD);
BOOL goInputtargetdirCopyToDlgCmd(HWND, HWND, WORD, WORD);
BOOL goCopytoCopyToDlgCmd(HWND, HWND, WORD, WORD);
BOOL goExitdlgCopyToDlgCmd(HWND, HWND, WORD, WORD);
// “移动文件”对话框窗口过程原型,用于该对话框窗口的消息处理,被系统直接调用
BOOL CALLBACK movetoDlgProc(HWND, UINT, WPARAM, LPARAM);
// “移动文件”对话框窗口收到WM_COMMAND消息后的处理过程原型
BOOL goCommandMoveToDlg(HWND, UINT, WPARAM, LPARAM);
// “移动文件”对话框中点击控件“源文件”、“目标路径”、“移动”和“退出”时的命令处理过程原型
BOOL goInputsourcefileMoveToDlgCmd(HWND, HWND, WORD, WORD);
BOOL goInputtargetdirMoveToDlgCmd(HWND, HWND, WORD, WORD);
BOOL goMovetoMoveToDlgCmd(HWND, HWND, WORD, WORD);
BOOL goExitdlgMoveToDlgCmd(HWND, HWND, WORD, WORD);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -