窗口比较容易<br>////////////////////////////////////////////<br><br>四四方方的窗体也会变形,利用win32 API函数setwindowrgn就可以将窗口定义为任何形状,以下是将窗口定义为园角矩形的例子:<br><br>procedure TPortForm.FormCreate(Sender: Tobject);<br>var hr :thandle;<br>begin<br>hr:=createroundrectrgn(0,0,width,height,20,20);//定义园角矩形或圆角正方形(win API函数)<br>//CreateEllipticRgn 定义圆形或椭圆<br>setwindowrgn(handle,hr,true); //设置园角窗口<br>end;<br>为了使该窗口更好,应在onResize事件处理程序放相同的代码。<br>/////////////////////////////////////<br><br>用汉字做窗体形状<br>procedure TForm1.FormCreate(Sender: TObject);<br>var<br>rgn:HRGN;<br>begin<br> BeginPath(Canvas.Handle);<br> SetBkMode( Canvas.Handle, TRANSPARENT );<br> Canvas.Font.Name:= '宋体';<br> Canvas.Font.Size:=100;<br> Canvas.TextOut( 20, 20, '漂亮吗?');//用"漂亮吗?"作为form的形状<br> EndPath(Canvas.Handle);<br> rgn:= PathToRegion(Canvas.Handle);<br> SetWindowRgn( Handle, rgn, true );<br>end;