Как создать форму определенной формы
Как создать форму определенной формы
Как создать форму определенной формы Можно создать форму по картинке. Т.е. находишь картинку в форме ножниц и создаёшь по ней форму. Код procedure Tmain.WMNCHitTest (var M:TWMNCHitTest); begin inherited; if M.Result = htClient then M.Result := htCaption; end; procedure Tmain.FormCreate(Sender: TObject); var regn, tmpRegn: integer; // регион окна и временный регион x, y: integer; // координаты пикселя nullClr: TColor; // <прозрачный цвет> begin nullClr := image1.picture.Bitmap.Canvas.Pixels[0, 0]; // Image1 это картинка по которой создается форма окна regn := CreateRectRgn(0, 0, image1.picture.Graphic.Width, image1.picture.Graphic.Height); for x := 1 to image1.picture.Graphic.Width do for y := 1 to image1.picture.Graphic.Height do if image1.picture.Bitmap.Canvas.Pixels[x - 1, y - 1] = nullClr then begin tmpRegn := CreateRectRgn(x - 1, y - 1, x, y); CombineRgn(regn, regn, tmpRegn, RGN_DIFF); DeleteObject(tmpRegn); end; SetWindowRgn(main.handle, regn, true); end;