用Command就能达到你的要求:)
自己做也很方便,主要就是上,左和下右分别用黑白2种线颜色就可以,按下时颜色交换一下。
再有狠多网站都有现成的控件下载。

解决方案 »

  1.   

    用图片吧
    用Image的click响应,用两张图片交替,可能会有这种效果的
      

  2.   

    VB实现按钮浮动效果 关于浮动按钮的实现思路不少,多是采取多图片重叠显示来实现。这种方法代码量多,实现起来较繁琐。因为,一个按钮还好,如果有十个按钮呢?一个按钮三个图片,十个就要三十个图片,可不是闹着玩的。
    我的思路是:
    舍弃CommandButton控件,每个按钮用4条Line控件和一个Label控件替代。4条Line围住Label的边缘,调入窗体时,置显示属性为False,并将左、上直线的颜色设为白色,右、下直线的颜色设为黑色。当鼠标移到Label上时,4条Line的显示属性置True;当鼠标离开按钮时,将4条Line的显示属性设置为False。这样在视觉上就完全得到立体浮动的效果。另外,VB的Line控件还支持直线倾斜,以此类推,完全可以做出更加美观的倾斜按钮。篇幅所限,下面仅给出一个按钮实现浮动效果的源代码。
    Option Explicit
    Private Sub Form_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
    End Sub
    Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    注释:鼠标指针在窗体上(不在按钮上)时,置4条Line的显示属性为False
    Line1.Visible = False
    Line2.Visible = False
    Line3.Visible = False
    Line4.Visible = False
    End Sub
    Private Sub label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    注释:鼠标指针在按钮上时,置4条Line的显示属性为True
    Line1.Visible = True
    Line2.Visible = True
    Line3.Visible = True
    Line4.Visible = True
    End Sub 
      

  3.   

    用API DrawEdge()函数,具体用法看MSDN,CSDN也有很多例子。
      

  4.   

    to huxiangming(老虎) :我是说那种象我们平时用的电源开关式的那种,就是有个可以板上板下或是那种中间有个轴,一边按下另一边就翘起来那种啊~
    摆脱在帮我想想啊~
      

  5.   

    tozw_yu(鱼猫) :好像用图片还能考虑~
      

  6.   

    用一個標簽也可以的.你只要在它的周圍加幾條線,然後在相應的事件中改變線條的顏色就可以了.
        同樣你也可以用圖片框也可以的.做法一樣的.
        還可以在flash 里做一個圖片效果更好的.