Delphi中如何实现透明按钮
2009-05-07 19:30
225 查看
各位亲爱的读者,在delphi编程实战中我们可以使用按钮控件来制作程序中的按钮键。但是在使用其它软件时,我们常常可以看到透明按钮的效果。那么如何在delphi中实现透明按钮的效果?笔者在互联网搜索了不少时间也没有找到这方面的控件,于是决定自己DIY一番,下面笔者就将自己的经验与广大读者共享一番。
要实现透明按钮,共需要三个控件-image、label、bevel。其中image控件是为了突出透明的效果而放置的(做为背景),label则是显示按键上的字。而bevel则是显示出一个立体框。(通过这个控件可以实现鼠标移到按钮上时显示出凸出的效果)下面我们就来看看具体的步骤吧。
1、 请先在delphi6.0中建一个工程文件
2、 请先选择一个图片,并注意其大小。然后将窗体调成与图片一样大小即可。
3、 然后在窗体上放置一个image控件,将其Align属性调为alclient,这样图片的大小便与窗体的大小一模一样可以做为背景了。然后选择picture属性并点击小按钮,在弹出的窗口中按下load键选择你所要做为背景的图片。
4、 接着在窗体上再放置一个label控件,合理设置按钮的文字内容及字体大小后。单击Transparent属性这样便将label设为了透明。
5、 最后在窗体上放置一个bevel控件。将shape属性设为bsBOX,然后将style属性设为bsRaise(这样为突然出效果),visible属性改为false(这样程序在运行时该控件不可见)。
6、 合理设置label与bevel控件的位置,使得bevel与label控件的位置及位置刚刚好一致,假如您觉得使用鼠标调整位置比较难。可以用Ctrl+箭头来微移控件,用Shift+箭头微调控件的大小。
下面我们就开始编程吧,请在代码窗口中设置下列事件及语句。
另外为了保证透明按钮看起来不是很单调您还可以在label控件附近放一个图标,这样可以让使用者看起来更加明了。
要实现透明按钮,共需要三个控件-image、label、bevel。其中image控件是为了突出透明的效果而放置的(做为背景),label则是显示按键上的字。而bevel则是显示出一个立体框。(通过这个控件可以实现鼠标移到按钮上时显示出凸出的效果)下面我们就来看看具体的步骤吧。
1、 请先在delphi6.0中建一个工程文件
2、 请先选择一个图片,并注意其大小。然后将窗体调成与图片一样大小即可。
3、 然后在窗体上放置一个image控件,将其Align属性调为alclient,这样图片的大小便与窗体的大小一模一样可以做为背景了。然后选择picture属性并点击小按钮,在弹出的窗口中按下load键选择你所要做为背景的图片。
4、 接着在窗体上再放置一个label控件,合理设置按钮的文字内容及字体大小后。单击Transparent属性这样便将label设为了透明。
5、 最后在窗体上放置一个bevel控件。将shape属性设为bsBOX,然后将style属性设为bsRaise(这样为突然出效果),visible属性改为false(这样程序在运行时该控件不可见)。
6、 合理设置label与bevel控件的位置,使得bevel与label控件的位置及位置刚刚好一致,假如您觉得使用鼠标调整位置比较难。可以用Ctrl+箭头来微移控件,用Shift+箭头微调控件的大小。
下面我们就开始编程吧,请在代码窗口中设置下列事件及语句。
procedure TForm1.Label1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);begin Bevel1.visible:=true; //使得bevel控件可视 label1.BringToFront; //将label1控件置于最前方以保证onclick事件能执行end; procedure TForm1.Label1Click(Sender: TObject);begin //在此加入点击按钮时需要执行的代码即可end;procedure TForm1.Image1MouseMove(Sender: TObject;Shift: TShiftState; X,Y: Integer);beginBevel1.visible:=false;//当鼠标在image控件移动时,使bevel控件不可视按钮不凸起end; |
相关文章推荐
- Delphi中如何实现透明按钮 也可用于BCB
- 导航栏全透明效果, 只保留左右两个按钮, 如何实现?
- Delphi 如何实现窗口透明,但是窗口上的文字不透明
- Delphi 如何实现窗口透明,但是窗口上的文字不透明
- 如何用图片实现表单(form)的重置(reset)按钮
- 如何实现背景透明,文字不透明
- 如何在Delphi中实现ASP编程
- Android中如何编写图片选择器,实现按点击按钮时按钮的图片或者颜色发生变化
- 如何用数据驱动实现通用化巡检APP(如何一个界面里添加多个点击拍照按钮并显示在不同的imageview里)
- 如何实现通过某个事件,使按钮自动按下?
- delphi 无代码实现背景透明及窗体异形方法及原理
- thinkphp 如何给控制器传值,实现按钮删除数据库信息
- 如何实现button点击时,按钮变色
- 如何实现Iframe透明
- mfc中如何实现窗体半透明 但是控件不透明
- 如何实现回车就触发按钮的事件
- Delphi实现的透明阴影以及蒙版效果菜单
- Delphi实现透明窗体
- Delphi 如何操作外部程序的控件(如按钮,文本框,单选按钮等)
- 如何用DELPHI实现把WORD、EXCEL和图片等存储到数据库中