VB里怎样才能实现,鼠标移动到按扭上,按钮的字变大,移开按扭的字恢复原状

来源:百度知道 编辑:UC知道 时间:2024/05/24 11:41:15
不好意思,我没有说明白,是在EXCEL里的VBA里,里面没有onmouseouver事件,
cwa9958朋友的能实现,我没想到,请问还有没有更好的方法,我的窗口里有几十个按扭,每个都要这样设,每个一行代码还能接受,但是还有一种情况就是鼠标直接会从一个按扭移动到另一个按扭上,很有可能不会触发UserForm_MouseMove事件,不至于要在每个按扭的代码里写其安按扭变小的代码吧,有没有更好的方法

如果你的那几十个按钮是一个控件数组的话,那这样的问题,就只有一条代码就搞定了。
在Excel中也有CommandButton1_MouseMove事情。

Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
CommandButton1.Font.Size = 20
CommandButton2.Font.Size = 9
End Sub

你这几十个按钮若没有一个相同的名字。那你就只能一步一步的做了

机子上的VB刚删 按扭应该有onmousemove这个动作吧,在这个动作的响应代码里改变button的字体大小,然后在onmouseover这个动作里处理还原字体,应该不是什么难事吧,VB好多年不用了,不知道是不是这样.

Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
'写改变字体变大
CommandButton1.Font.Size = 18
End Sub

Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
'写字体变小代码
CommandButton1.Font.Size = 9
End Sub

一般鼠标不会移动这么快的哦,只要在Sub UserForm_MouseMove里把每个按钮变小的代码写出就可以了,在vba里好像没有控件数组的吧。