VB中怎么把command按钮由长方形变成椭圆形

 我来答
网海1书生
科技发烧友

2012-03-19 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26226

向TA提问 私信TA
展开全部
你可以用一个Image控件放上椭圆形的图片来代替command按钮,用Image控件的Click事件来响应鼠标点击事件。还可以自己加上鼠标移入或移出时按钮的变化效果。此方法可以做出很漂亮的自制按钮来。
或者你也可以用椭圆形的shape控件,上面放个透明的Label控件来模拟command按钮,用Label控件的Click事件来响应鼠标点击事件(shape控件本身不支持鼠标事件)。这种方法的好处是简单,无须使用图片就可做出椭圆效果来。
当然也可以用现成的第三方控件或自制控件,这就属于高级玩法了,估计你也一时半会掌握不了,就不说了。
Allen穆迪埃
2015-06-29 · TA获得超过7137个赞
知道大有可为答主
回答量:8378
采纳率:0%
帮助的人:3522万
展开全部
方法:

1 用图形控件(如img,pic),自己在事件中处理,一般采用三幅图,分别表示Normal,Mouse In以及Mouse Down;
2 用其它控件,如Sheriden_ActiveThreed_Plus3.0等,事件已帮你做好,只需加入图形即可,非常方便。
3 在一个Form中定义两个按钮,cmd1和command2,书写以下代码:
Private Sub cmd1_Click()
MsgBox "ok"
End Sub
Private Sub Command2_Click()
Dim crgn As Long
Dim ret As Long
crgn = CreateEllipticRgn(5, 5, cmd1.Width - 5, cmd1.Height - 5)
ret = SetWindowRgn(cmd1.hwnd, crgn, True)
cmd1.Caption = "ok"
cmd1.Visible = True
End Sub
API函数:
Public Declare Function SetWindowRgn Lib "user32" (ByVal hwnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long
Public Declare Function CreateEllipticRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友bdb9803
2012-03-19 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:53%
帮助的人:1亿
展开全部
VB没有,这要去找第三方控件
追问
应该怎么做呢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式