如何在DELLPHI中实现非规则图形按钮和图形界面?(100分)

X

xjxjjx

Unregistered / Unconfirmed
GUEST, unregistred user!
&nbsp; &nbsp;DELLPHI缺省情况下,程序的窗口和按钮等都是规则的四方形的,能<br>否自己定植定制各种图形界面?比方说:自己做了一幅图,现要把这幅<br>图作成窗口及按钮(不改变图的显示形状)。<br>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;向各位请教该如何解决!<br>
 
能,自己以“不规则”检索一下,很多的
 
有工具可实现奇形怪异的按钮形状!
 
重写 form.paint(虚方法)<br>&nbsp; &nbsp; <br>详细可发email:eek:khello@263.net
 
http://go.163.com/~longwu/Example/EroseForm.zip<br>有三个例子.<br>主要利用:CreateRgn SetwindowRgn.<br>请顺便到:<br>http://go.163.com/~longwu/主叶看看<br><br>
 
一个例子<br>procedure TForm1.FormClick(Sender: TObject);<br>var<br>&nbsp; R : HRgn;<br>begin<br>&nbsp; if IsRound then<br>&nbsp; &nbsp; begin<br>&nbsp; &nbsp; &nbsp; SetWindowRgn(Handle,0,True);<br>&nbsp; &nbsp; &nbsp; DeleteObject(R);<br>&nbsp; &nbsp; &nbsp; IsRound := False;<br>&nbsp; &nbsp; end<br>&nbsp; else<br>&nbsp; &nbsp; begin<br>&nbsp; &nbsp; &nbsp; R := CreateEllipticRgn(-15,-15,Width+15,Height+15);<br>&nbsp; &nbsp; &nbsp; SetWindowRgn(Handle,R,True);<br>&nbsp; &nbsp; &nbsp; IsRound := True;<br>&nbsp; &nbsp; end;<br>end;<br><br>procedure TForm1.FormCreate(Sender: TObject);<br><br>begin<br>&nbsp; IsRound := False;<br>end;<br><br>end.<br><br>
 
老生常谈了,很多控件包都有这个控件,推荐使用LMD4.52,它有制作<br>不规则窗口的专门控件和不规则按钮的控件,窗口的形状可以由BMP文件<br>制作,并可以指定多个透明色。而按钮则只能用预订的几种形状,如圆形、<br>菱形、星形等,形状还是比较多的,够用了<br>1ST控件也可以
 
多人接受答案了。
 
顶部