vb请问像QQ那样的关闭按钮怎么做呢?

来源:百度知道 编辑:UC知道 时间:2024/06/17 07:42:58
vb请问像QQ那样的关闭按钮怎么做呢?

就是两张图,一蓝一红,鼠标接触到就变红,移开又变成蓝的代码

参考,须自己修改:
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Label1.ForeColor = vbYellow Then Label1.ForeColor = vbBlue
End Sub

Private Sub Label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label1.ForeColor = vbYellow
End Sub

可以像楼上那样用mousemove方法来做,但是这样做在鼠标移动很快并且控件排列比较紧密的时候会检测不到Form的Mousemove事件,但是如果你的界面控件排列稀疏的话用这种方法比较简单有效。

还有另外一种方法,在控件排列密集的时候比较好用,有一个API函数可以获得【当前鼠标相对于【整个屏幕】】的坐标
Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long

用这个函数取来坐标与Form的坐标换算后与控件坐标进行比较,根据比较结果来判断该导入那张图片,给你一个我做的例子,我用三十二个紧密排列的图片框检验过了,我英文不好,瞎编的变量和过程名,请不要见笑==================================================================
Form1的程序

Option Explicit

Private Sub Form_Load()
Me.ScaleMode = 3
Timer1.Interval = 20
Timer1.Enabled = True
End Sub

Private Sub Timer1_Timer()
Dim i As Integer