![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как найти все главные Окна и распредилить их по заголовку ? [D7, WinXP]
ЛамоРщщук © (2008-10-05 15:34:00)Привет всем , надеюсь на вашу помошь =))))нужно найти все Главные окна и добавить их в листбокс , причём имя добавляемой записи в лист бокс должна соответсвовать заголовку окна , а не хэндла =)))
например
function EnumProc (Wd: HWnd; Param: LongInt): Boolean; stdcall; // Обязательно stdcall !!!
Begin
if GetClassName(Wd,'mainwindow',30)=1 then begin
form1.ListBox1.Items.Add(IntToStr(Wd)); // Добавляем текущий описатель окна
EnumProc := TRUE;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Clear; // Очистим список перед началом поисков
EnumWindows (@EnumProc, 0); // и скажем - искать
end;
Этот код ищет все Окна , в том числе не нужные нам =) и добавляет их по хендлу а нам
нужно найти все главные окна .
как это правельно сделать ?Функцией GetClassName ?
Что писать в ClassName ? какие бывают классы ?
Leonid Troyanovsky (2008-10-06 21:42:00) [1]
> ЛамоРщщук (05.10.08 15:34)
> нужно найти все главные окна .
А окна бывают главными?
--
Regards, LVT.
clickmaker (2008-10-06 16:55:00) [2]> имя добавляемой записи в лист бокс должна соответсвовать
> заголовку окна , а не хэндла
а у хэндла есть заголовок?
Плохиш (2008-10-06 11:38:00) [3]
> главные - это те кнопки
Хм, в вопросе вроде про окна спрашивали...
DVM (2008-10-05 19:30:00) [4]
> нужно найти все Главные окна
главные - это те кнопки к которым появляются на панели задач?
@!!ex (2008-10-05 16:07:00) [5]отправил не полностью:
EnumWindows
GetWindowText
Дают только ГЛАВНЫЕ окна.
EnumChildWindows
дает не главные.
@!!ex (2008-10-05 16:05:00) [6]EnumWindows
GetWindowText
Anatoly Podgoretsky (2008-10-05 15:57:00) [7]Что такое главные Окна
Насчет классов - классы равные бывают и ни чем не ограничены.