首页 文章

用于在PowerPoint中鼠标悬停时更改形状颜色的宏

提问于
浏览
0

是否可以在PowerPoint中使用VBA更改鼠标悬停时的形状颜色?

我尝试使用动画触发器创建相同的效果,但需要单击 . 但是当我将鼠标悬停在它上面并将鼠标悬停在下一个形状上时,我想更改形状颜色并将其更改回原始颜色 . 这有可能实现吗?

提前致谢 .

1 回答

  • 0

    这可以通过黑客方法来克服PowerPoint不支持鼠标移除事件的事实 . 您可以做的是编写鼠标悬停宏,如下所示更改颜色:

    Option Explicit
    
    Public myShape as Shape ' Global reference to mouse over shape
    
    Sub MouseOver(oShp As Shape)
      Set myShape = oShp
      With oShp
        ' Change the properties you need here
      End With
    End Sub
    

    通过插入/操作/鼠标悬停/运行宏将其分配给您的形状

    接下来,这是没有鼠标移除事件的黑客攻击,在底层的幻灯片上添加一个矩形形状 . 将填充透明度设置为100%并将以下宏指定给它的鼠标悬停事件:

    Sub MouseOutHack()
      With myShape
        ' Reset the properties you need here
      End With
    End Sub
    

    现在,当您将鼠标移动到形状上时,它的属性将发生变化,当您将其移出形状时,不可见的背景形状将触发重置您选择的属性 .

相关问题