获取在Powerpoint中调用宏的控件的名称

时间:2012-08-08 07:07:09

标签: c# vsto add-in powerpoint-vba

在VBA中是否有用于PowerPoint或C#COM AddIn的方法,以识别调用宏的控件或处于活动状态的控件(确定它刚被单击)?

我知道

Globals.ThisAddIn.Application.ActiveWindow.Selection

,但是当你处于演示模式时,这不起作用,我在

下找不到任何东西
Globals.ThisAddIn.Application.ActivePresentation

编辑: 我需要获取控件或其名称,以便我可以使用相同的Sub进行多个控件。

示例:

Public Sub RespondToControl(Control sender) 
    Dim AddIn As COMAddIn 
    Dim automationObject As Object 
    Set AddIn = Application.COMAddIns("MyAddIn") 
    Set automationObject = AddIn.object 
    Call automationObject.DoSomethingBasedOnNameOfControl(sender.Name) 
End Sub

1 个答案:

答案 0 :(得分:0)

如果您指的是开发人员工具箱中的控件(命令按钮,复选框等),则在幻灯片放映期间单击控件时,将运行每个控件的Click事件中的代码。

Private Sub CheckBox1_Click()
MsgBox "You clicked CheckBox1"
End Sub

Private Sub CommandButton1_Click()
MsgBox "You clicked CommandButton1"
End Sub

您的意思是其他类型的控件吗?

你究竟需要完成什么?