tempad
ReadyGo!技术成就梦想 >>VB教程 >> VB实现按钮浮动效果

VB实现按钮浮动效果

ReadyGo!技术成就梦想 网络搜索 efish 2008-2-24 2:47:48
微软的VisualBasic确实是个好东西,编写应用程序快捷高效。但是入门容易,想玩转它可不简单。我个人学VB就深有体会:一个人在VB的殿堂里摸索是何等的辛苦啊!有时为了一个特技、一句代码甚至一个变量要反复调试运行几十遍,也未必能通过,真恨不得一枪崩了VB。所以,我连这一点点小技巧都不敢独品,拿出来与大家共享,也算抛砖引玉,引出更多、更精彩的奇思妙文,以“飨”读者。
关于浮动按钮的实现思路不少,多是采取多图片重叠显示来实现。这种方法代码量多,实现起来较繁琐。因为,一个按钮还好,如果有十个按钮呢?一个按钮三个图片,十个就要三十个图片,可不是闹着玩的。
我的思路是:
舍弃CommandButton控件,每个按钮用4条Line控件和一个Label控件替代。4条Line围住Label的边缘,调入窗体时,置显示属性为False,并将左、上直线的颜色设为白色,右、下直线的颜色设为黑色。当鼠标移到Label上时,4条Line的显示属性置True;当鼠标离开按钮时,将4条Line的显示属性设置为False。这样在视觉上就完全得到立体浮动的效果。另外,VB的Line控件还支持直线倾斜,以此类推,完全可以做出更加美观的倾斜按钮。篇幅所限,下面仅给出一个按钮实现浮动效果的源代码。
OptionExplicit
PrivateSubForm_Load()
"初始Form与Label
Form1.Caption=“浮动按钮"
Form1.KeyPreview=False
label1.Caption=“确定"
"初始4条Line的显示属性为False
Line1.Visible=False
Line2.Visible=False
Line3.Visible=False
Line4.Visible=False
"初始4条Line的颜色
Line1.BorderColor=&HE0E0E0
Line2.BorderColor=&HE0E0E0
Line3.BorderColor=&H808080
Line4.BorderColor=&H808080
EndSub
PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
"鼠标指针在窗体上(不在按钮上)时,置4条Line的显示属性为False
Line1.Visible=False
Line2.Visible=False
Line3.Visible=False
Line4.Visible=False
EndSub
PrivateSublabel1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
"鼠标指针在按钮上时,置4条Line的显示属性为True
Line1.Visible=True
Line2.Visible=True
Line3.Visible=True
Line4.Visible=True
EndSub->

责任编辑: efish 参与评论 查找更多:
相关文章
用VB制作TopMost类型窗口 用VB制作TopMost类型窗口
如何用VB建立快捷方式 如何用VB建立快捷方式
在系统菜单上添加自定义菜单项 在系统菜单上添加自定义菜单项
奇形怪状的窗体 奇形怪状的窗体
在VB中如何创建闪烁(标语)屏 在VB中如何创建闪烁(标语)屏
用VB5.0创建Windows快捷方式 用VB5.0创建Windows快捷方式
VB5.0应用程序的启动与退出设计 VB5.0应用程序的启动与退出设计
VB5.0中实现字体闪烁效果 VB5.0中实现字体闪烁效果
用VB尝试新的界面风格 用VB尝试新的界面风格
利用VB三维面板控件设计流动条 利用VB三维面板控件设计流动条
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的ReadyGo.com.cn

分类导航
ReadyGo!技术成就梦想