procedure tform1.formcreate(sender:tobject);
var
region:hrgn;
begin
region:=createellipticrgn(1,1200,200);
setwindowrgn(handle,region,true);
end;祝:身体健康!

解决方案 »

  1.   

    如果想随心所欲的爽,找一找这个函数---createpolygonrgn祝:身体健康!
      

  2.   

    procedure TForm1.FormPaint(Sender: TObject);
    var
     t:string;
     rgn:HRGN;
    begin
       BeginPath(Canvas.Handle); SetBkMode( Canvas.Handle, TRANSPARENT );// Canvas.Font.Name:= fontname;
     canvas.Font.Name:=fonttest.Name;
     Canvas.Font.Size:=fontsize;
     canvas.Font.Style:=fontstyle;
     t:=timetostr(now());
     Canvas.TextOut( 0, 20, t); //?"????"??form??? EndPath(Canvas.Handle); rgn:= PathToRegion(Canvas.Handle); SetWindowRgn( Handle, rgn, true );
    end;
      

  3.   

    引:
    procedure TForm1.FormClick(Sender: TObject); 
    var 
      R : HRgn; 
    begin 
      if IsRound then 
        begin 
          SetWindowRgn(Handle,0,True); 
          DeleteObject(R); 
          IsRound := False; 
        end 
      else 
        begin 
          R := CreateEllipticRgn(-15,-15,Width+15,Height+15);       SetWindowRgn(Handle,R,True); 
          IsRound := True; 
        end; 
    end; 
      
    procedure TForm1.FormCreate(Sender: TObject); 
    begin 
      IsRound := False; 
    end;