![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить ТЕКСТ окна, найденного при помощь 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.