Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.08.28;
Скачать: [xml.tar.bz2];

Вниз

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

 
_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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.006 c
14-92177
panov
2003-08-08 23:00
2003.08.28
О форумах.


3-92047
nokk9
2003-08-03 14:58
2003.08.28
суммы в DBGrid


14-92205
Кен
2003-08-09 02:57
2003.08.28
Задачка про кенгуру


7-92292
StAL
2003-06-06 12:53
2003.08.28
Запись в Kernel32 под 9х


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





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский