
17.11.2007, 14:48
|
|
Постоянный
Регистрация: 16.04.2007
Сообщений: 398
С нами:
10037186
Репутация:
1462
|
|
Сообщение от Iceangel_
Как сделать форму ввиде сердца
SetWindowsRgn(Form1.Handle, True);
Код:
function BitmapToRegion(Bitmap: TBitmap; TransColor: TColor): HRGN;
var
X, Y: Integer;
XStart: Integer;
begin
Result := 0;
with Bitmap do
for Y := 0 to Height - 1 do
begin
X := 0;
while X < Width do
begin
while (X < Width) and (Canvas.Pixels[X, Y] = TransColor) do
Inc(X);
if X >= Width then
Break;
XStart := X;
while (X < Width) and (Canvas.Pixels[X, Y] <> TransColor) do
Inc(X);
if Result = 0 then
Result := CreateRectRgn(XStart, Y, X, Y + 1)
else
CombineRgn(Result, Result,
CreateRectRgn(XStart, Y, X, Y + 1), RGN_OR);
end;
end;
end;
Где TBitmap - картинка с сердцем , TColor - цвет фона картинки; (Цвета картинки не важны т к вырезается только форма...а цвет делаешь просто картинкой на форме (как текстуру))
Последний раз редактировалось Jes; 17.11.2007 в 14:50..
|
|
|