Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как получить ТЕКСТ окна, найденного при помощь GetWindowText? [D6, WinXP]


Volf_555 ©   (2006-01-23 18:32:00) 

ЗАГОЛОВОК окна я получаю функцией GetWindowText
Как получить ТЕКСТ самого окна или определённого элемента?


Gero   (2006-01-26 23:54:00) [1]

> Volf_555   (26.01.06 23:46)

msdn -> search -> enumchildwindows


Volf_555   (2006-01-26 23:46:00) [2]


> Gero ©   (24.01.06 13:29) [15]
> http://msdn.microsoft.com/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctio 
> ns/enumchildwindows.asp

Ссылка может быть и интересная, но ответ пишется следующий:
"Location Cannot Be Found"

P.S.: я в курсе что delphimaster.ru пробелы в ссылках не воспринимает


Gero   (2006-01-24 13:29:00) [3]

http://msdn.microsoft.com/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/enumchildwindows.asp


Volf_555   (2006-01-24 12:33:00) [4]


> Gero ©   (24.01.06 10:45) [10]
> > Volf_555   (24.01.06 00:59)
>
> А что в справке пишут?


В строенной справке по Delphi такой функции вообще нет


Atheist   (2006-01-24 11:27:00) [5]


> Определиться для начала, что считать текстом окна. Дальше
> — по ситуации.

В моем случае, то, что введено в поле ввода. То, что у edit'а caption.


Gero   (2006-01-24 11:24:00) [6]

> А если все же очень нужно его получить, что делать?

Определиться для начала, что считать текстом окна. Дальше — по ситуации.


Atheist   (2006-01-24 11:18:00) [7]


> Можно.

Прекрасно. А если все же очень нужно его получить, что делать?


Gero   (2006-01-24 10:45:00) [8]

> Volf_555   (24.01.06 00:59)

А что в справке пишут?

> Atheist   (24.01.06 06:16)

Можно.


Atheist   (2006-01-24 06:16:00) [9]

Можно создать такое окно, у которого нельзя получить текст?


Volf_555   (2006-01-24 00:59:00) [10]

var
s,s1:Integer;
a:String;
begin
s:=FindWindow(nil,'Безымянный - Блокнот');
if s<>0 then
begin
ShowMessage('asd');
EnumChildWindows(s,...................................................дальше как?)
GetWindowText(s,PChar(a),255);
ShowMessage(a);
end;


Gero   (2006-01-24 00:55:00) [11]

EnumChildWindows


Volf_555   (2006-01-24 00:48:00) [12]


> Gero ©   (24.01.06 00:33) [5]
> > есть ТЕКСТ этого окна: "Error 800: ............."
>
> Это текст другого окна.

Хорошо, тогда как найти и получить Child текущего окна и получить его текст?


Gero   (2006-01-24 00:33:00) [13]

> есть ТЕКСТ этого окна: "Error 800: ............."

Это текст другого окна.


Volf_555   (2006-01-24 00:28:00) [14]

Я имею в виду другое:
есть ЗАГОЛОВОК окна: "Ошибка подключения: KITAlex"
есть ТЕКСТ этого окна: "Error 800: ............."

Пробывал следующий код - находит окно, а текст в нём - нет:

var
s,s1:Integer;
a:String;
begin
s:=FindWindow(nil,'Безымянный - Блокнот');
if s<>0 then
begin
 ShowMessage('asd');
 GetWindowText(s,PChar(a),255);
 ShowMessage(a);
end;


palva   (2006-01-23 21:51:00) [15]

Заголовок окна и есть его текст. Текст кнопки это надпись на кнопке текст надписи это надпись и т. д.


Volf_555   (2006-01-23 19:59:00) [16]


> Reindeer Moss Eater

А понятней никак?


Reindeer Moss Eater   (2006-01-23 18:57:00) [17]

function GetWindowText(hWnd: HWND; lpString: PChar; nMaxCount: Integer): Integer;

Remarks

This function causes a WM_GETTEXT message to be sent to the specified window or control.

This function cannot retrieve the text of an edit control in another application.


Наверх

Титульная страница Поиск, карта сайта Написать письмо