Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.03.15;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.019 c
4-1206457103
Informer
2008-03-25 17:58
2009.03.15
Кнопка закрытия формы


2-1232720314
Виолета с
2009-01-23 17:18
2009.03.15
Лист Бокс


2-1232630826
EastGod
2009-01-22 16:27
2009.03.15
Получить общую громкость


15-1231216463
_VirEx_
2009-01-06 07:34
2009.03.15
mspaint стучится в инет


2-1232942009
Drowsy
2009-01-26 06:53
2009.03.15
Не получается точно определить ширину текста на канве.