描述
获取窗口文本的长度.这个函数还可以用来检索按钮的文本长度,编辑和静态控件.
FreeBASIC 语法
FUNCTION AfxGetWindowTextLength (BYVAL hwnd AS HWND) AS LONG |
参数
hwnd |
[in]窗口或控件的句柄 |
返回值
如果函数成功,返回值是字符中文本的长度,不包括终止空字符.
如果函数失败,返回值为零.
对于编辑控件,返回的文本是编辑控件的内容.对于组合框,文本是组合框的编辑控件(或静态文本)部分的内容.对于按钮,文本是按钮名.对于其他窗口,文本是窗口标题.检索项列表框中的文本,应用程序可以使用ListBox_GetTextLength功能.
AfxGetWindowTextLength发送WM_GETTEXTLENGTH消息.当WM_GETTEXTLENGTH消息发送,DefWindowProc函数返回的字符,文本的长度.在一定的条件下,该DefWindowProc函数返回的值大于文本的实际长度.这发生在ANSI和Unicode的某些混合物,由于系统允许双字节字符集的字符可能存在(DBCS)在文本.然而,返回值将始终至少与文本的实际长度一样大,因此可以始终使用它来引导缓冲区分配.这种行为可以发生在一个应用程序使用两ANSI功能和通用对话框,使用Unicode.
获取文本的确切长度,使用WM_GETTEXT,LB_GETTEXT,或CB_GETLBTEXT消息,或GetWindowText功能.
发送一个WM_GETTEXTLENGTH消息非文本的静态控件,如静态位图或静态图标控件,不会返回一个字符串值.相反,它返回零.
引用文件
AfxWin.inc


