如何使程序界面的角是圆形(100分)

  • 主题发起人 主题发起人 sntmpl
  • 开始时间 开始时间
S

sntmpl

Unregistered / Unconfirmed
GUEST, unregistred user!
我们做的程序都是四四方方的,如何做个界面的角是圆的?没有菜单有等等
 
搜索一下‘如何做多边型的窗口’,很久以前看到过记不清
 
用infopower控件就可以做它里面有demo
 
不规则窗口,Setwindowsrgn什么的忘了,应该有打错阿。
 
这里有创建椭圆窗体的一段代码
procedure TFrmMain.FormCreate(Sender: TObject);
var
rgn:HRGN;
begin
rgn:=CreateEllipticRgn(0,0,150,150);
SetWindowRgn(self.Handle, rgn, true);
end;
更一般的用CreatePolygonRgn代替CreateEllipticRgn就可以做出任意形状的窗体了
 
同意"教父"
 
教父说的是创造椭圆的窗体,还可以创造出圆角矩形
rgn:=CreateEllipticRgn(0,0,form1.width,form1.height,150,150);
还有一个函数可以创造出特殊窗体,比如最外面是圆形,中间是矩形的,
好象是combinergn吧,记不太清了,有兴趣可以查一下帮助文件的。
rgn3:=combinergn(rgn1,rgn2,Rgn_XOR);//第三个参数好象不对
setwindowrgn(form1.handle,rgn3,true);
 
多人接受答案了。
 
后退
顶部