把2个颜色不一样的图片方在一起,然后用mousemove事件和鼠标的离开事件(需要API)
来处理

解决方案 »

  1.   

    Form 中加入一个Picture,一个Timer控件:
    Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
        Timer1.Enabled = False
       Picture1.BackColor =&H8000000F  '复原
    End SubPrivate Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
        Timer1.Enabled = True
    End SubPrivate Sub Timer1_Timer()
        If Picture1.BackColor <> RGB(256, 0, 0) Then
            Picture1.BackColor = RGB(256, 0, 0)
        Else
            Picture1.BackColor = RGB(0, 256, 0)
        End If
    End Sub
      

  2.   

    Timer的属性Interval=100   '不为0
      

  3.   

    to Richard2001(Richard) :
    Form上的其他控件不也需要mousemove的复原代码吗?那多麻烦呀!to xingming_sun(Andre):
    鼠标的离开事件(需要API)的代码如何写呀,哪里有例子?
      

  4.   

    form上的其它控件不需要mousemove,除非,这两个控件紧挨在一起,另:鼠标的离开事件(需要API)的代码如何写呀,哪里有例子?    http://www.csdn.net/expert/topic/376/376907.shtm
      

  5.   

    当form_mousemove时,就让控件恢复原色.
      

  6.   

    Richard2001:你的这个程序好像不能实现"渐变"
      

  7.   

    http://nowcan.yeah.net
    方法也是用mousemove