SetDlgItemText
函数功能
在对话框中设置控件的标题或文本。
函数声明
WINUSERAPI
BOOL
WINAPI
SetDlgItemTextA(
_In_ HWND hDlg,
_In_ int nIDDlgItem,
_In_ LPCSTR lpString);
第一个参数
输入参数,包含控件的对话框的句柄。
第二个参数
输入参数,要设置标题或文本的控件。
第三个参数
输入参数,要复制到控件的文本
返回值
类型:布尔
如果函数成功,则返回值为非零。
如果函数失败,则返回值为零。要获取扩展的错误信息,请调用GetLastError
。
补充
所述SetDlgItemText
功能发送WM_SETTEXT
消息发送到指定的控制。
实现代码
GetDlgItemText
函数功能
在对话框中检索与控件关联的标题或文本。
函数声明
GetDlgItemTextA(
_In_ HWND hDlg,
_In_ int nIDDlgItem,
_Out_writes_(cchMax) LPSTR lpString,
_In_ int cchMax);
第一个参数
输入参数,包含控件的对话框的句柄。
第二个参数
输入参数,要检索其标题或文本的控件的标识符。
第三个参数
输出参数,接收标题或文本的缓冲区。
第四个参数
输入参数,要复制到lpString
指向的缓冲区的字符串的最大长度(以字符为单位)。如果字符串的长度(包括空字符)超过了限制,则字符串将被截断。
返回值
类型:UINT
如果函数成功,则返回值指定复制到缓冲区的字符数,不包括终止的空字符。
如果函数失败,则返回值为零。要获取扩展的错误信息,请调用GetLastError
。
补充
如果字符串与缓冲区一样长或更长,则缓冲区将包含带有终止空字符的截断字符串。
所述GetDlgItemText
函数发送WM_GETTEXT
消息发送到控制。
实现代码
SetDlgItemInt
函数功能
将对话框中控件的文本设置为指定整数值的字符串表示形式。
函数声明
BOOL
WINAPI
SetDlgItemInt(
_In_ HWND hDlg,
_In_ int nIDDlgItem,
_In_ UINT uValue,
_In_ BOOL bSigned);
第一个参数
输入参数,包含控件的对话框的句柄。
第二个参数
输入参数,要更改的控件。
第三个参数
输入参数,用于生成项目文本的整数值。
第四个参数
输入参数,指示uValue
参数是带符号的还是无符号的。如果此参数为TRUE,则对uValue
进行签名。如果此参数为TRUE并且uValue
小于零,则在字符串的第一个数字之前放置一个减号。如果此参数为FALSE,则uValue
为无符号。
返回值
类型:布尔
如果函数成功,则返回值为非零。
如果函数失败,则返回值为零。要获取扩展的错误信息,请调用GetLastError
。
补充:
要设置新文本,此函数将WM_SETTEXT消息发送到指定的控件。
实现代码
GetDlgItemInt
函数功能
将对话框中指定控件的文本转换为整数值。
函数声明
UINT
WINAPI
GetDlgItemInt(
_In_ HWND hDlg,
_In_ int nIDDlgItem,
_Out_opt_ BOOL *lpTranslated,
_In_ BOOL bSigned);
第一个参数
输入参数,包含感兴趣的控件的对话框的句柄。
第二个参数
输入参数,要翻译其文本的控件的标识符。
第三个参数
输出参数,类型:布尔*
表示成功或失败(TRUE表示成功,FALSE表示失败)。
如果此参数为NULL,则该函数不返回有关成功或失败的信息。
第四个参数
输入参数,指示函数是否应该在开始时检查文本中是否有负号,并在发现一个整数值时返回带符号的整数值(TRUE表示应这样做,FALSE则不应该)。
返回值
类型:UINT
如果函数成功,则lpTranslated指向的变量将设置为TRUE,并且返回值是控制文本的转换后的值。
如果函数失败,则将lpTranslated指向的变量设置为FALSE,并且返回值为零。注意,因为零是可能的转换值,所以零返回值本身并不表示失败。
如果lpTranslated为NULL,则该函数不返回有关成功或失败的信息。
请注意,如果bSigned参数为TRUE,并且文本开头有减号(–),则GetDlgItemInt会将文本转换为带符号的整数值。否则,该函数将创建一个无符号整数值。为了在这种情况下获得正确的值,请将返回值强制转换为int类型。
要获取扩展的错误信息,请调用GetLastError。
补充:
该GetDlgItemInt功能通过发送的控制的检索指定控制的文本WM_GETTEXT消息。该函数通过在文本开头去除多余的空格,然后转换十进制数字来转换检索到的文本。当到达文本末尾或遇到非数字字符时,该函数停止翻译。
如果转换后的值大于INT_MAX(对于带符号的数字)或UINT_MAX(对于无符号的数字),则GetDlgItemInt函数返回零
实现代码
GetDlgItem
函数功能
在指定的对话框中检索控件的句柄。
函数声明
HWND
WINAPI
GetDlgItem(
_In_opt_ HWND hDlg,
_In_ int nIDDlgItem);
第一个参数
输入参数,包含控件的对话框的句柄。
第二个参数
输入参数,要检索的控件的标识符。
返回值
类型:HWND
如果函数成功,则返回值是指定控件的窗口句柄。
如果函数失败,则返回值为NULL,指示无效的对话框句柄或不存在的控件。要获取扩展的错误信息,请调用GetLastError。
补充
可以将GetDlgItem函数与任何父子窗口对一起使用,而不仅限于对话框。只要hDlg参数指定了父窗口并且子窗口具有唯一的标识符(由创建子窗口的CreateWindow或CreateWindowEx函数中的hMenu参数指定),GetDlgItem就会向子窗口返回有效的句柄