Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.28;
Скачать: CL | DM;

Вниз

Вытащить иконку   Найти похожие ветки 

 
_Stas_ ©   (2003-06-12 13:22) [0]

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


 
Spawn ©   (2003-06-12 13:53) [1]

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


 
_Stas_ ©   (2003-06-12 13:56) [2]

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


 
DVM ©   (2003-06-12 13:57) [3]


> Spawn © ( Ex)

> Spawn ©


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

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


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


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

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


 
Spawn ©   (2003-06-12 14:01) [5]

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


 
DVM ©   (2003-06-12 14:08) [6]


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

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

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



 
_Stas_ ©   (2003-06-12 17:28) [7]

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



Страницы: 1 вся ветка

Текущий архив: 2003.08.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
14-92205
Кен
2003-08-09 02:57
2003.08.28
Задачка про кенгуру


14-92214
HolACost☻
2003-08-10 12:45
2003.08.28
Лучший фильм этого года!


1-92095
REP
2003-08-14 07:47
2003.08.28
Добавление узла (Child) в TTreeView в произвольном месте


7-92275
Kirill_S
2003-06-06 18:01
2003.08.28
как получить список программ свернутых в SysTray?


4-92297
Alone Corsar
2003-06-27 08:47
2003.08.28
Закрыть внешнее приложение с сохранением данных