Top > OOoBasic > Generic > Events

イベント Edit

ツール - カスタマイズで設定できるイベント

イベントはアプリケーションと各ドキュメントに保存されます。

イベントの種類 Edit

API を利用して設定できるイベントは GUI から設定できるイベントの種類よりも多数あります。

イベント名
OnStartAppアプリケーションの開始
OnCloseAppアプリケーションの終了
OnNew新規ドキュメント作成
OnLoadドキュメント読み込み
OnSaveAsドキュメント名前を付けて保存時
OnSaveAsDoneドキュメント名前を付けて保存終了時
OnSaveドキュメント上書き時
OnSaveDoneドキュメント上書き終了時
OnPrepareUnload
OnUnload
OnFocusフォーカス時
OnUnfocusフォーカス失時
OnPrint印刷時
OnModifyChanged編集ステータス変更時
OnCopyTo
OnCopyToDone
OnViewCreatedビューが作成されたとき
OnPrepareViewClosing
OnViewClosed
OnVisAreaChanged
OnCreate
OnLoadFinished読み込み完了時
OnSaveAsFailed名前を付けて保存失敗時
OnSaveFailed上書き失敗時
OnCopyToFailed
TitleChanged
OnMailMerge
OnPageCountChange

ドキュメントイベントコンテナ Edit

イベントコンテナオブジェクトはドキュメントモデルオブジェクトから取得します。

Sub getEventsContainer()
  oDoc = ThisComponent
  oEvents = oDoc.getEvents()
End Sub

アプリケーションイベントコンテナ Edit

アプリケーションのイベントコンテナは com.sun.star.frame.GlobalEventBroadcaster サービスから取得します。

oGlobalEB = CreateUnoService("com.sun.star.frame.GlobalEventBroadcaster")
oEvents = oGlobalEB.getEvents()

イベントの設定 Edit

各イベントは com.sun.star.document.EventDescriptor サービスのプロパティを利用して com.sun.star.beans.PropertyValue で指定します。

 Dim oProps(1) As New com.sun.star.beans.PropertyValue
 oProps(0).Name = "EventType"
 oProps(1).Name = "Script"
 oProps(0).Value = "Script"
 oProps(1).Value = _
   "vnd.sun.star.script:Standard.Module1.DocEv?language=Basic&location=document"
 oEvents.replaceByName("OnFocus",oProps)

EventType には Script を指定します。また、Script に実行するスクリプトの URL を指定します。


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