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

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

ИЗМЕНИТЬ РАЗМЕР ЗНАЧКА! [D7, WinME, Win2k, WinXP]


Maxim Pshevlotsky ©   (2003-08-22 16:29:00) 

Народ, помогите плиз! Кто знаить как размер значка(TIcon) изменить программно. Очень надо!


Maxim Pshevlotsky   (2003-08-22 18:07:00) [1]

jonni © (22.08.03 17:48) [5]

О, спасибо большое, все работает!


jonni   (2003-08-22 17:48:00) [2]

tak bi davno skazalibi
vot naprimer est" variant:

rabotaet dlya vsego (papki... faili... yarliki...itd)
FileName<-sootvetstvenno to ot chego nuzhna ikonka.....
Size<- esli menshe 32 to izvlekaetsya kak vidno malen"kauya ikonka 16x16
esli bol"she sootvetstevvno..32x32...
Canvas<- tokuda risovat".......esli nado
uses ShellAPI;

procedure TForm1.DrawIcon(FileName : String; Canvas:TCanvas; Size: Integer);
var
FileInfo: TSHFileInfo;
begin
if Size<32 then
begin
SHGetFileInfo(PChar(FileName),
0,
FileInfo,
SizeOf(FileInfo),
SHGFI_ICON or SHGFI_SMALLICON);
end
else
begin
SHGetFileInfo(PChar(FileName),
0,
FileInfo,
SizeOf(FileInfo),
SHGFI_ICON or SHGFI_LARGEICON);
end;
DrawIconEx(Canvas.Handle,0,0,FileInfo.hIcon, size, size,0, Canvas.Brush.Handle,DI_NORMAL);
end;


Maxim Pshevlotsky   (2003-08-22 17:42:00) [3]

Тогда если можно из выше сказанного вытекает ниже следующее:

Как из ф.-и ExtractAssociatedIcon получить значок 16Х16, а то извлекается значок размером 32Х32 а если изменять его размер программно(DrawIconEx) то значок искажается :(((


jonni   (2003-08-22 17:05:00) [4]

сжать ....... что же это значит????
нарисоать как 16х16 или реально как то перебрать пиксели и сделать 16х16....... что дальше хотите делать потом??

если рисовать 16x16 то DrawIconEx(Parent.Canvas.Handle, xLeft, yTop, hIcon, 16, 16, 0, 0, DI_NORMAL);


Maxim Pshevlotsky   (2003-08-22 16:52:00) [5]

jonni © (22.08.03 16:31) [1]

Нужно значок размером 32Х32 "сжать" до 16Х16


jonni   (2003-08-22 16:31:00) [6]

esli nuzhno prosto risovat" s lyubim razmerom to DrawIconEx


Наверх

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