براي آنكه يك فرم بيضي شكل داشته باشيد مي بايست هر گونه تغيير در شكل فرم را در هنگام رويداد ايجاد فرم قرار دهيد . يعني در رويداد OnCreate.

براي انجام اين عمل روي فرم مورد نظر دابل كليك كنيد تا رويداد OnCreate آن ظاهر گردد . حال با استفاده از دستور جالب SetWindowRgn كه قابليت تغيير شكل كنترلهاي بسياري را دارا مي باشد فرم را تغيير شكل مي دهيم . اما در ابتدا مي بايست شكل بيضي را براي Handle آن تعريف كنيم . اين عمل توسط تابع CreateEllipticRgn انجام مي شود كه داراي چهار پارامتر است:


کد:


بنابراين كد رويداد ايجاد فرم بايد به شكل زير باشد :

کد:
CreateEllipticRgn( x , y , w , h : integer); procedure TForm1.FormCreate(Sender: TObject);var Hndl:THandle;begin Hndl:=CreateEllipticRgn(30,30,200,100); SetWindowRgn(Handle,Hndl,True);end