鼠标悬停在VBA中时如何启用高亮显示?

时间:2013-04-22 09:58:42

标签: vba powerpoint powerpoint-2010

如何在鼠标移入VBA时启用高亮显示?我在VBA中写了一个marco,在创建一个新形状之后,当鼠标悬停时,应该启用形状突出显示。也许有颜色?

谢谢 argonist

3 个答案:

答案 0 :(得分:1)

您的宏需要在特定事件上运行。所以在Powerpoint中你有以下选项:

  • 的MouseDown
  • 的MouseMove
  • 的MouseUp

你可以点击F1键告诉你究竟哪个事件发生了什么 在VBA中没有名为“MouseOver”的事件,因此您需要即兴创作,例如使用“MouseMove”事件在将鼠标悬停在其上时更改颜色,然后可能是页面的“MouseMove”事件将其更改回默认颜色当你将鼠标移动到其他东西上时。
您应该能够在Visual Basic窗口中的对象的下拉列表中找到所有这些事件

使用VBA的另一个选择是使用powerpoint动画和效果,这可能会得到相同的结果。

答案 1 :(得分:0)

我找到了简单的方法。

myshape.ActionSettings(ppMouseOver).AnimateAction = msoTrue

但我无法改变颜色和线条大小。这对我来说已经足够了。谢谢。

答案 2 :(得分:0)

在幻灯片中的ActiveX图片附加上尝试这个(在显示模式下运行的代码)

'zmien_w_trybie_prezentacji - VBATools.pl
Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Call kolor2(Image1)
End Sub

Sub kolor2(osh As Image)
    If osh.BackColor = 255 Then _
       osh.BackColor = 13998939 Else _
       osh.BackColor = 255
End Sub