Top > OOoBasic > Generic > Events
*イベント [#fbae09dc]

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

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

#contents
**イベントの種類 [#a6c3cb17]
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||
**ドキュメントイベントコンテナ [#lc9a5e96]
イベントコンテナオブジェクトはドキュメントモデルオブジェクトから取得します。

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


**アプリケーションイベントコンテナ [#l9479c34]
アプリケーションのイベントコンテナは com.sun.star.frame.GlobalEventBroadcaster サービスから取得します。
 oGlobalEB = CreateUnoService("com.sun.star.frame.GlobalEventBroadcaster")
 oEvents = oGlobalEB.getEvents()
**イベントの設定 [#h7d7e72a]
各イベントは 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