Top > OOoBasic > Impress > SlideShowController

スライドショーコントローラ Edit

スライドショー中のみ利用できるスライドショーコントローラ。ページの移動などが行えます。プレゼンテーコンソール拡張機能はこのコントローラを利用して動作します。

スライドショーコントローラ Edit

スライドショー実行時のみ、プレゼンテーションコントローラに接続できます。ページ移動の操作など各種のプレゼンテーション中の操作が API 関数を通じて行えます。外部からプレゼンテーションのスライドショーを操作するときなどに利用します。

oController = ThisComponent.getPresentation().getController()
Attribute説明
AlwaysOnTopboolean
MouseVisibleboolean
PenColorlong
UsePenboolean

プレゼンテーションの開始と終了イベント Edit

プレゼンテーションが開始されたときに OnStartPresentation が、終了したときに OnEndPresentation イベントが通知されます。プレゼンテーションコントローラの設定などに利用できます。

Sub DocumentEventListener
 listener = CreateUnoListener(_
     "DocumentEvent_", "com.sun.star.document.XEventListener")
 
 oDoc = ThisComponent
 oDoc.com_sun_star_document_XEventBroadcaster_addEventListener(listener)
End Sub

Sub DocumentEvent_notifyEvent(ev)
 If ev.EventName = "OnStartPresentation" Then
   msgbox "!"
 End If
 'OnStartPresentation, OnEndPresentation
End Sub
Sub DocumentEvent_disposing(ev)
End Sub

スライド中のページ管理 Edit

プレゼンテーション中に最後に表示したスライドへ移動する機能を実現するには、プレゼンテーションコントローラでページ間遷移を記録しておく必要があります。

  0
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
Global mytools_SlideShowPageNumber As Long
 
Sub DocumentEventListener
 listener = CreateUnoListener(_
     "DocumentEvent_", "com.sun.star.document.XEventListener")
 
 oDoc = ThisComponent
 oDoc.com_sun_star_document_XEventBroadcaster_addEventListener(listener)
End Sub
 
Sub DocumentEvent_notifyEvent(ev)
 If ev.EventName = "OnStartPresentation" Then
   mytools_SlideShowPageNumber = 0
   oController = ev.Source.getPresentation().getController()
   oController.addSlideShowListener(_
       CreateUnoListener(_
       "SlideShow_", "com.sun.star.presentation.XSlideShowListener"))
 End If
 'OnStartPresentation, OnEndPresentation
End Sub
Sub DocumentEvent_disposing(ev)
End Sub
 
 
Function GetPresentationController
  GetPresentationController = ThisComponent.getPresentation().getController()
End Function
 
 
Sub GoToSlideByIndex(n As Long)
  GetPresentationController.gotoSlideIndex(n)
End Sub
 
 
Sub GoToNextSlide
  GetPresentationController.gotoNextSlide()
End Sub
 
Sub GoToLastSlideViewed
  GoToSlideByIndex(mytools_SlideShowPageNumber)
End Sub
 
 
Function GetCurrentSlideIndex As Long
  GetCurrentSlideIndex = GetPresentationController.getCurrentSlideIndex()
End Function
 
 
Sub SlideShow_paused()
End Sub
Sub SlideShow_resumed()
End Sub
Sub SlideShow_slideTransitionStarted()
  n = GetCurrentSlideIndex()
  If n > mytools_SlideShowPageNumber Then mytools_SlideShowPageNumber = n
End Sub
Sub SlideShow_slideTransitionEnded()
End Sub
Sub SlideShow_slideAnimationsEnded()
End Sub
Sub SlideShow_slideEnded()
  mytools_SlideShowPageNumber = 0
End Sub
Sub SlideShow_hyperLinkClicked(hyperLink)
End Sub
Sub SlideShow_beginEvent(node)
End Sub
Sub SlideShow_endEvent(node)
End Sub
Sub SlideShow_repeat(node, repeat)
End Sub
Sub SlideShow_disposing(ev)
End Sub

Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes