我想以编程方式擦除 PowerPoint 2003/2007/2010 中幻灯片上的用户笔画和注释,以替代发送“E”键击。
我发现SlideShowView.EraseDrawing
只会擦除由SlideShowView.DrawLine
.
示例代码:
PowerPoint.Application.ActivePresentation.SlideShowSettings.Run.View.EraseDrawing
感谢您的回答!罗比东
我想以编程方式擦除 PowerPoint 2003/2007/2010 中幻灯片上的用户笔画和注释,以替代发送“E”键击。
我发现SlideShowView.EraseDrawing
只会擦除由SlideShowView.DrawLine
.
示例代码:
PowerPoint.Application.ActivePresentation.SlideShowSettings.Run.View.EraseDrawing
感谢您的回答!罗比东
这使用户可以选择保留或删除墨迹,然后在幻灯片放映视图中返回到原始幻灯片。仍然不是你所追求的,真的,但它是我迄今为止所能达到的最接近的:
Private Sub CommandButton1_Click()
Dim x As Long
x = SlideShowWindows(1).View.Slide.SlideIndex
With SlideShowWindows(1)
.View.Exit
End With
With ActivePresentation
.SlideShowSettings.Run
End With
SlideShowWindows(1).View.GotoSlide (x)
End Sub
您是否要在他们停止幻灯片放映并选择保留绘图后删除笔绘图?在这种情况下,请在您要从中擦除绘图的任何幻灯片上调用下面的 EraseInkOnSlide 函数。
Sub TestMe()
EraseInkOnSlide ActivePresentation.Slides(1)
End Sub
Sub EraseInkOnSlide(oSl As Slide)
' Erases any INK shapes drawn by the user and
' retained when the user quits the slide show
Dim oSh As Shape
Dim x As Long
With oSl.Shapes
For x = .Count To 1 Step -1
If .Item(x).Type = 23 Then
.Item(x).Delete
End If
Next
End With
End Sub
我怀疑您必须暂时退出幻灯片放映模式,然后以 slideshwo 模式返回当前幻灯片,才能使其在幻灯片放映模式下工作;PPT 显然不考虑幻灯片形状集合中的墨水形状部分,直到用户结束显示并选择保留形状。诡异的。