|
SlideShowNextSlide事件
切换到下一张幻灯片立刻发生此事件。对于第一张幻灯片,此事件紧跟在SlideShowBegin事件之后发生。
Private Sub application_SlideShowNextSlide(ByVal Wn As SlideShowWindow)
application Application 类型的对象,在类模块中声明,自身具有事件。有关使用 Application对象的事件的详细信息,请参阅使用 Application对象的事件。
Wn 活动幻灯片放映窗口。
VBA示例
本示例确定了发生 SlideShowNextSlide事件后幻灯片的位置。如果下一张幻灯片是第三张幻灯片,则本示例将鼠标指针的类型更改为笔形且颜色更改为红色。
Private Sub App_SlideShowNextSlide(ByVal Wn As SlideShowWindow)
Dim Showpos As Integer
Showpos = Wn.View.CurrentShowPosition + 1
If Showpos = 3 Then
With ActivePresentation.SlideShowSettings.Run.View
.PointerColor.RGB = RGB(255, 0, 0)
.PointerType = ppSlideShowPointerPen
End With
Else
With ActivePresentation.SlideShowSettings.Run.View
.PointerColor.RGB = RGB(0, 0, 0)
.PointerType = ppSlideShowPointerArrow
End With
End If
End Sub
本示例将全局计数器变量的值设置为 0。然后计算此事件后幻灯片上的形状个数,确定哪些形状具有动画,并用每个形状的动画顺序和编号填充全局数组。
注意 本示例中创建的数组还用于 SlideShowNextBuild事件示例中。
Private Sub App_SlideShowNextSlide(ByVal Wn As SlideShowWindow)
Dim i as Integer, j as Integer, numShapes As Integer
Dim objSld As Slide
Set objSld = ActivePresentation.Slides _
(ActivePresentation.SlideShowWindow.View _
.CurrentShowPosition + 1)
With objSld.Shapes
numShapes = .Count
If numShapes > 0 Then
j = 1
ReDim shpAnimArray(1 To 2, 1 To numShapes)
For i = 1 To numShapes
If .Item(i).AnimationSettings.Animate Then
shpAnimArray(1, j) = _
.Item(i).AnimationSettings.AnimationOrder
shpAnimArray(2, j) = i
j = j + 1
End If
Next
End If
End With
End Sub
WindowActivate事件
当激活某个应用程序窗口或任意文档窗口时发生此事件。
Private Sub application_WindowActivate(ByVal Pres As Presentation, ByVal Wn As DocumentWindow)
application Application 类型的对象,在类模块中声明,自身具有事件。有关使用 Application对象的事件的详细信息,请参阅使用 Application对象的事件。
Pres 在活动窗口中显示的演示文稿。
Wn 已激活的文档窗口。
VBA示例
本示例在幻灯片浏览视图中打开每一个已激活的演示文稿。
Private Sub App_WindowActivate (ByVal Pres As Presentation, ByVal Wn As DocumentWindow)
Wn.ViewType = ppViewSlideSorter
End Sub
WindowBeforeDoubleClick事件
当双击下表列出的视图中的项目时发生此事件。
视图 项目
普通或幻灯片视图 形状
幻灯片浏览视图 幻灯片
备注页视图 幻灯片图像
除非将 Cancel参数设置为 True,否则在发生此事件后将产生默认的双击动作。
Private Sub application_WindowBeforeDoubleClick(ByVal Sel As Selection, ByVal Cancel As Boolean)
application Application 类型的对象,在类模块中声明,自身具有事件。有关使用 Application对象的事件的详细信息,请参阅使用 Application对象的事件。
Sel 双击时鼠标指针以下所选定的区域。
Cancel 此事件发生时,为 False。如果事件过程将此参数设置为 True,则完成此过程后,不会执行默认的双击动作。
VBA示例
在幻灯片浏览视图中,默认双击任何幻灯片都会转到幻灯片视图。在本示例中,如果活动演示文稿显示在幻灯片浏览视图中,则 WindowBeforeDoubleClick事件抢占为默认动作。事件过程会将视图切换为普通视图,然后通过将 Cancel参数设置为 True 来取消切换到幻灯片视图。
Private Sub App_WindowBeforeDoubleClick (ByVal Sel As Selection, ByVal Cancel As Boolean)
With Application.ActiveWindow
If .ViewType = ppViewSlideSorter Then
.ViewType = ppViewNormal
Cancel = True
End If
End With
End Sub |
|