![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Дискрипторы окон
turonix © (2003-11-12 17:44:00)
Здравствуйте мастера. У меня общий вопрос: Каждое окно в Windows имеет собственный дискриптор, а компоненты в окне (например кнопки, TWebBrowser и т.п.) имеют ли дискрипторы? И если да то как их узнать, чтобы можно было управлять ими с помощью функций WinAPI ?
Prov (2003-11-12 17:58:00) [1]
чтобы управлять ими, сначала нужно получить хэндл этого окна, например так:
var WD: hWnd;
begin
if FindWindow(nil, "okno")<>0 then
begin
WD:= FindWindow(nil, "okno");
ShowWindow(WD, false);
sleep(5000);
ShowWindow(WD, true);
SetWindowtext(WD, "aaaa");//точно не помню синтаксиса, я без Дельфи
end;
end;
Этот код попробует найти окно с названием "okno", и если найдёт, то спрячет его, потом покажет, а потом уже и надпись на нём поменяет, можно применять ко всем компонентам, которые имеют хэндл
Digitman (2003-11-12 17:52:00) [2]
если компонент есть наследник TWinControl, то он имеет св-во Handle: hWnd, значение которого ты вправе передавать параметром во все ф-ции WinAPI, требующие хэндл окна