Вниз
Скачать: CL | DM;

ИЗМЕНИТЬ РАЗМЕР ЗНАЧКА!   Найти похожие ветки 

 
Maxim Pshevlotsky   (2003-08-22 16:29) [0]

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


 
jonni ©   (2003-08-22 16:31) [1]

esli nuzhno prosto risovat" s lyubim razmerom to DrawIconEx


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

jonni © (22.08.03 16:31) [1]

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


 
jonni ©   (2003-08-22 17:05) [3]

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

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


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

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

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


 
jonni ©   (2003-08-22 17:48) [5]

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 18:07) [6]

jonni © (22.08.03 17:48) [5]

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



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.023 c
14-89513
niko4543
2003-10-09 08:21
2003.10.27
rsrc


1-89365
Кен
2003-10-01 04:33
2003.10.27
Как сделать чтобы через определённый промежуток времени


14-89506
Игорь Шевченко
2003-10-07 17:12
2003.10.27
Так портит Windows XP жесткие диски или нет ? :)


3-89145
stoper
2003-10-07 12:05
2003.10.27
LocalSQL and TQuery


1-89272
abb
2003-10-14 12:56
2003.10.27
Совет нужен по компоненте для отображения дерева и wisywig реда..




   Наверх