Показать сообщение отдельно

  #740  
Старый 17.11.2007, 14:48
Jes
Постоянный
Регистрация: 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..
 
Ответить с цитированием