曲径通幽论坛

标题: SendDlgItemMessage() -- 给对话框中指定的控件发送消息 [打印本页]

作者: beyes    时间: 2012-2-8 02:21
标题: SendDlgItemMessage() -- 给对话框中指定的控件发送消息
函数原型如下:
LONG SendDlgItemMessage(   HWND hDlg,   int nIDDlgItem,   UINT Msg, WPARAM wParam,   LPARAM lParam);

该函数用来给对话框中指定的空间发送一个消息。其中参数的含义为:

hDlg :含有控件的对话框句柄。

nIDDlgItem :接收发送消息的控件的标识。

Msg :要发送的消息

wParam  lParam 是附加信息。

下面是一个对话框:
[attach]205[/attach]
在该对话框中的文本输入框,即“用户名”和“序列号”输入窗口即是文本编辑控件。下面将使用 SendDlgItemMessage() 函数来初始化该编辑框控件,使之只能接收最多 80 个字符的输入,比如:
SendDlgItemMessage(hDlg, IDC_TXT0, EM_LIMITTEXT, MAXINPUTLEN, 0);

第一个参数 hDlg 即是该对话框的句柄。

第二个参数 IDC_TXT0 是编辑框控件的标识,在 Resource.h 头文件中可以看到它的定义,比如:
#define IDC_TXT0                        110
该定义值由 IDE 编辑资源时自动产生,在资源文件 (rc) 中也可以看到。

第三个参数 EM_LIMITTEXT 是个消息,该消息限制了文本框中可以接受的最大字符数。

第四个参数 MAXINPUTLEN 是个自定义的宏,呼应第三个参数,具体说明可接受的最大字符数是多少,它是个附加信息。

第五个参数这里留空,它也是个附加信息。




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2