GetDlgItem获取窗口中指定参数ID的子元素的句柄,可以通过返回的句柄对窗口内的子元素进行操作。
WINUSERAPI
HWND
WINAPI
GetDlgItem(
__in_opt HWND hDlg, //标识含有控件的对话框
__in int nIDDlgItem); //指定将被检索的控件标识符号
返回值:HWND,返回对话框窗体的子元素的句柄
参数1: HWND hDlg 对话框的句柄
参数2:int nIDDlgItem 指定将被检索的控件标识符
SendMessage和PostMessage,两个函数都是发送消息,SendMessage是等待消息返回,而PostMessage是发送完消息后立即返回
LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam)
hWnd:指定要接收消息的窗口的句柄。
如果此参数为HWND_BROADCAST,则消息将被发送到系统中所有顶层窗口,包括无效或不可见的非自身拥有的窗口、被覆盖的窗口和弹出式窗口,但消息不被发送到子窗口。
Msg:指定被发送的消息。
按钮消息如下
/*
* Button Control Messages
*/
#define BM_GETCHECK 0x00F0 //检查是否被选中,如果是被选中,返回值为0或1
#define BM_SETCHECK 0x00F1 //设置是否被选中,wParam为0是不选中,1为选中
#define BM_GETSTATE 0x00F2 //获取状态
#define BM_SETSTATE 0x00F3 //设置状态
#define BM_SETSTYLE 0x00F4 //设置样式
#if(WINVER >= 0x0400)
#define BM_CLICK 0x00F5
#define BM_GETIMAGE 0x00F6
#define BM_SETIMAGE 0x00F7
#endif /* WINVER >= 0x0400 */
#if(WINVER >= 0x0600)
#define BM_SETDONTCLICK 0x00F8
#endif /* WINVER >= 0x0600 */
窗体的消息
#define WM_SETFOCUS 0x0007
#define WM_KILLFOCUS 0x0008
#define WM_ENABLE 0x000A
#define WM_SETREDRAW 0x000B
#define WM_SETTEXT 0x000C
#define WM_GETTEXT 0x000D
#define WM_GETTEXTLENGTH 0x000E
#define WM_PAINT 0x000F
#define WM_CLOSE 0x0