![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
прозрачная текстура [D5, D7, Win95/98, WinXP]
maxistent © (2004-11-15 09:54:00)Привет, Мастера! Наложиение битмапа. Нужно создать некую "дверь", чтобы в ней было "окно" не прямоугольной формы (прозрачное). Как придать прозрачность битмапу при наложении???
_Nikolay (2004-11-30 12:37:00) [1]Почему бы не сделать прозрачной часть формы :
unit
U_Clip;
interface
uses Windows, Messages, SysUtils, Classes, Graphics,
Controls, Forms, Dialogs, StdCtrls;
type
TForm1 = class(TForm)
protected
procedure RebuildWindowRgn;
procedure Resize; override;
public
end;
var
Form1 : TForm1;
implementation
{$R *.DFM}
procedure TForm1.Resize;
begin
inherited;
RebuildWindowRgn;
end;
procedure TForm1.RebuildWindowRgn;
var
FullRgn, Rgn: THandle;
ClientX, ClientY, I: Integer;
begin
FullRgn:= CreateRectRgn(0, 0, Width, Height);
Rgn := CreateEllipticRgn
(
round(Width/4) ,
Round(Height/4),
3 * round(Width/4) ,
3 * Round(Height/4)
);
CombineRgn(FullRgn, FullRgn, Rgn, rgn_Diff);
SetWindowRgn(Handle, FullRgn, True);
end;
end.
Sapersky (2004-11-30 00:42:00) [2]В хелпе есть пример на эту тему - у меня он работает.
Проблема может быть только с правильным заданием прозрачного цвета - например, задаёшь черный, а на картинке он не совсем черный.
maxistent (2004-11-29 16:16:00) [3]--> TBitmap.Transparent, TBitmap.TransparentColor <-- НЕ РАБОТАЕТ!!!
Sapersky (2004-11-29 13:08:00) [4]TBitmap.Transparent, TBitmap.TransparentColor
maxistent (2004-11-29 09:37:00) [5]объясните, пожалуйста, чайнику ???
aanco (2004-11-21 01:49:00) [6]TGA поможет
WondeRu (2004-11-15 13:05:00) [7]BLENDING search in google