Содержимое текстового поля C ++ - PullRequest
3 голосов
/ 23 сентября 2010

Как мне получить содержимое текстового поля в C ++?

Ответы [ 5 ]

7 голосов
/ 23 сентября 2010

Используйте Win32 API GetWindowText , передавая дескриптор окна текстового поля.

Если вы хотите получить текст из другого процесса, используйте WM_GETTEXT вместо SendMessage .

1 голос
/ 04 октября 2010

Исправление к последнему сообщению:

//unicode std::string or std::wstring
typedef std::basic_string<TCHAR> unicode_string;

unicode_string GetWinString(HWND h)
{
int len = ::GetWindowTextLength(h);
if (len)
  {
  std::vector<TCHAR> tmp(len + 1,_T('\0'));
  ::GetWindowText(h,&tmp[0],len + 1);
  return &tmp[0];
  }
return _T("");
}
1 голос
/ 23 сентября 2010

GetWindowText ()

1 голос
/ 23 сентября 2010
0 голосов
/ 24 сентября 2010
//unicode std::string or std::wstring
typedef std::basic_string<TCHAR> unicode_string;

unicode_string GetWinString(HWND h)
{
int len = ::GetWindowTextLength(h);
if (len)
  {
  std::vector<TCHAR> tmp(len + 1,_T('\0'));
  ::GetWindowText(h,&tmp[0],len + 1);
  return &tmp[0];
  }
return _T("");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...