消息
/*
* Window Messages,消息
*/
// 对于每个函数参考,1,简要说明,2参数,3返回值. rearks 备注. example 样例.
#define WM_NULL 0x0000 //空
#define WM_CREATE 0x0001 // 创建时
#define WM_DESTROY 0x0002 // 销毁时
#define WM_MOVE 0x0003 // 移动时
#define WM_SIZE 0x0005 // 大小改变时
WM_INITDIALOG 0x0110: 对话框专用的初始化消息(一次)
WM_ COMMAND 0x0111: 用户指令消息(各种控件,菜单等的点击控制等).
WM_CLOSE 0x0010 系统关闭消息(系统默认的一个,alt+f4/ 鼠标右键),不添加任何东一也是有的.
WM_UIT 0x0012 程序退出消息
WM_LBUTTONDOWN 0x0201 左键按下消息.
WM_LBUTTONUP 0x0202 左键释放消息
WM_LBUTTONDBLCLK 0x0203 左键双击消息
WM_RBUTTONDOWN 0x0204 右键按下消息.
WM_RBUTTONUP 0x0205 右键释放消息
WM_RBUTTONDBLCLK 0x0206 右键双击消息
WM_MOUSEMOVE 光标移动消息(它的两个参数都比较重要,wparam,lparam)
我们知道消息通常都会携带数据,在参数上表示为wparam,lparam两种信息.wparam一般携带着产生消息的控件id.可以通过wparam参数来控制消息触发的控件.而lparam则通常在一些消息中携带坐标信息(例如点击之类的消息).
按下释放一般配套使用,按下时记录按下的位置,释放时记录释放时的位置,并做处理.常用在绘图的,绘画板功能的方面.
函数
- strcat 字符串追加函数,向目标字符串中追加内容.
char *strcat(
char *strDestination,
const char *strSource
);
wchar_t *wcscat(
wchar_t *strDestination,
const wchar_t *strSource
);
unsigned char *_mbscat(
unsigned char *strDestination,
const unsigned char *strSource
);
template
char *strcat(
char (&strDestination)[size],
const char *strSource
); // C++ only
template
wchar_t *wcscat(
wchar_t (&strDestination)[size],
const wchar_t *strSource
); // C++ only
template
unsigned char *_mbscat(
unsigned char (&strDestination)[size],
const unsigned char *strSource
); // C++ only
MessageBox 消息提示框.
FindWindow 查找主窗口(用来显示当前窗口的句柄).查找句柄.
DialogBox 显示有输入输出功能的窗口.
EndDialog 关闭模式对话框
GetDlgItemInt 通过一个窗口内的控件上的文字获取一个数字(转换为int型)
SetDlgItemInt 通过一个窗口内的控件上的文字设置一个数字.
SetWindowText: 对一个主窗口标题设置文字(或者是控件文字)
特殊的控件ID
确认键与取消键:IDOK,IDCANCEL.他们都是复合的.与多个键位,响应共用同一个消息处理.
标志位
像这种, 其二进制值只有一位为1的值.可以作为标志位,当使用不同的位运算的时候可以达到不同的效果.
- 位运算
标志位结合: wParam = MK_MBUTTONON|MK_CONTROL|MK_SHIFT
标志位判断: if(wParam& MK_LBUTTON)
标志位分离:wParam &=~Mk_BUTTON (先取反再与运算,取反0变1,1变0则抹去了对应的标志位,再与原变量与运算,与运算遇0为0,11得1).