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

Изображение с прозрачностью на форме   Найти похожие ветки 

← →
Turbidit   (2007-12-09 12:55) [0]

Хочу просто отобразить некое изображение на форме (формат ico 24 бита). Нашел 2 способа:

1. Кладу на форму TKOLImageShow, привязываю к нему TKOLImageList с той самой иконкой.

2. Просто в свойстве TKOLImageShow.Brush.Bitmap выбираю это изображение.

Но в том и в другом случае какие-то траблы с прозрачностью фона.
Игрался с разными параметрами на обоих компонентах, но желаемого эффекта так и не достиг. Наверно, я что-то не понимаю.

Чтобы не быть голословным - вот скриншот: http://www.turbid.land.ru/tmp/picture.jpg. Первая - TImage на VCL (как должно быть). Вторая - TKOLImageShow.Brush.Bitmap. Третья - TKOLImageShow c TKOLImageList.


← →
Turbidit   (2007-12-10 03:01) [1]

Ссылка не окрывалась, правильная так: http://www.turbid.land.ru/tmp/picture.jpg

КОЛ не поддерживает 24-битную графику?


← →
Jon ©   (2007-12-10 06:38) [2]

Use TIconInfo to convert bitmap and mask to transparent icon:

program BMP2ICO;

uses
 Windows, KOL;

procedure btnClick(Dummy: Pointer; Sender: PObj);
var
 Icon: PIcon;
 bmpMask, bmpColour: PBitmap;
 IconInfo : TIconInfo;
begin
 Icon := NewIcon;
 Icon.Size := 16;
 bmpColour := NewDIBBitmap(16,16,pf24bit);
 bmpMask := NewDIBBitmap(16,16,pf1bit);
 bmpColour.Canvas.Brush.Color := clRed;
 bmpColour.Canvas.Pen.Color := clWhite;
 bmpColour.Canvas.Ellipse(2,2,Icon.Size,Icon.Size);
 bmpMask.Assign(bmpColour);
 bmpMask.Convert2Mask(clBlack);
 IconInfo.fIcon := True;
 IconInfo.hbmMask := bmpMask.Handle;
 IconInfo.hbmColor := bmpColour.Handle;
 Icon.Handle := CreateIconIndirect(IconInfo);
 bmpMask.Free;
 bmpColour.Free;
 Applet.Icon := Icon.Handle;
 Icon.Free;
end;

begin
 Applet := NewForm(nil,"");
 NewButton(Applet,"Icon").OnClick := TOnEvent(MakeMethod(nil,@btnClick));
 Run(Applet);
end.


← →
Turbidit   (2007-12-16 19:24) [3]

Up



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

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



Память: 0.45 MB
Время: 0.013 c
15-1231595719
Slider007
2009-01-10 16:55
2009.03.15
С днем рождения ! 7 января 2009 среда


2-1233124341
HandBrake
2009-01-28 09:32
2009.03.15
BDE + Paradox + WinXP + перекодировка


2-1232614740
kyn66
2009-01-22 11:59
2009.03.15
Не копируется открытый файл DBF


15-1231829478
Эля
2009-01-13 09:51
2009.03.15
Ошибка памяти


2-1232578253
RustB
2009-01-22 01:50
2009.03.15
Ошибка при добавлении записи в access




   Наверх