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

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

Вытащить иконку


_Stas_ ©   (2003-06-12 13:22:00) 

Как вытащить иконку окна в TIcon? или сохранить в *.ico ?


_Stas_   (2003-06-12 17:28:00) [1]

DVM, спасибо, все работает:)


DVM   (2003-06-12 14:08:00) [2]


> ну дак какая разница откуда ее брать?

Разница большая. ExtractIcon извлекает иконку из файла. Если есть окно и надо получить его иконку, то, чтобы воспользоваться ExtractIcon надо 1. Определить к какому процессу относится окно, 2. Определить имя файла процесса. 3. Определить номер иконки в этом файле (это скорее невозможно).

WM_GETICON + WM_QUERYDRAGICON позволяют получить иконку непосредственно из окна, т.е. минуя шаги 1-3. В вопросе было слово ОКНО.


Spawn   (2003-06-12 14:01:00) [3]

ну дак какая разница откуда ее брать? Или сдесь именно из процесса нужно? Тогда правильный ответ у DVM :)


DVM   (2003-06-12 13:59:00) [4]


> _Stas_ © (12.06.03 13:56)
> да, но она возвращает HICON...

MyIcon:=TIcon.Create;
try
hIcon:=....
MyIcon.Handle:=hIcon;
....
DestroyIcon(hIcon); // возможно не понадобится
finally
MyIcon.free;
end;


DVM   (2003-06-12 13:57:00) [5]


> Spawn © ( Ex)


> Spawn ©


> вытащить иконку окнав TIcon?

Причем здесь ExtractIcon(Ex)?
Правильный ответ WM_GETICON.


_Stas_   (2003-06-12 13:56:00) [6]

да, но она возвращает HICON...


Spawn   (2003-06-12 13:53:00) [7]

Иконку можно получить при помощи ExtractIcon(Ex).


Наверх

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