Функция GetWindowTextLength


Функция GetWindowTextLength возвращает обратно длину, в символах, текста строки заголовка заданного окна (если окно имеет область заголовка). Если определяемое окно - орган управления, функция возвращает обратно длину текста внутри элемента управления. Однако, GetWindowTextLength не может получить длину текста поля редактирования текста в другом приложении.

Синтаксис

int GetWindowTextLength(

HWND hWnd // дескриптор окна или панели 
         
// управления с текстом

);

Параметры

hWnd

[in] Дескриптор окна или органа управления.

Возвращаемые значения

Если функция завершается успешно, возвращаемое значение - длина, в символах, текста. При известных условиях, это значение может фактически быть большим, чем длина текста. Для получения дополнительной информации, см. следующий раздел Замечаний.

Если у окна нет текста, возвращаемое значение нулевое. Чтобы получать расширенные данные об ошибках, вызовите GetLastError.

Замечания

Если целевое окно принадлежит текущему процессу, функция GetWindowTextLength заставляет отправить сообщение WM_GETTEXTLENGTH в заданное окно или орган управления.

При известных условиях, функция GetWindowTextLength может возвращать значение, которое является большим, чем фактическая длина текста. Это происходит с некоторыми смесями ANSI и Unicode и благодаря операционной системе, которая допускает возможное существование двухбайтовых символов (DBCS) внутри текста. Возвращаемое значение, однако, будет всегда, по крайней мере, такого размера, как фактическая длина текста; Вы можете, таким образом, всегда использовать эту функцию, чтобы вести буферное распределение. Такое поведение может происходить тогда, когда прикладная программа использует и функции ANSI и стандартные диалоговые окна, которые используют Unicode. Это может также происходить и тогда, когда приложение использует версию ANSI функции GetWindowTextLength с окном, оконная процедура которого является Unicode, или версию Unicode с окном, оконная процедура которого написана для ANSI. Для получения дополнительной информации о функциях ANSI и наборе ANSI, см. статью Соглашения для прототипов функций.

Чтобы получить точную длину текста, используйте сообщения WM_GETTEXT, LB_GETTEXT или CB_GETLBTEXT, или функцию GetWindowText.

Смотри также

Краткий обзор Окна, CB_GETLBTEXT, GetWindowText, LB_GETTEXT, SetWindowText, WM_GETTEXT, WM_GETTEXTLENGTH

Размещение и совместимость GetWindowTextLength

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

User32.lib

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz