Top > OOobbs3 > 127

OOobbs3/127 Edit

  • サマリ: イベントのキャンセルの仕方を教えてください
  • 環境: General
  • 状態: 未解決
  • 投稿者: しづき?
  • 投稿日: 2014-08-28 (木) 09:53:07

質問 Edit

初めまして 「文書が閉じられる直前」イベントにマクロを割り当てているのですが、VBAで言うところの「Cancel=true」にあたる動作が解らなくて困っています。 あちこち調べたのですが、どうにも見つからないのでよろしくお願いします。

回答 Edit

  • ツール - カスタマイズ - イベントから行える方法では、不可能です。ドキュメントが閉じられることをキャンセルするには、ドキュメントのcom.sun.star.util.XCloseBroadcasterインターフェースにcom.sun.star.util.XCloseListenerを追加し、queryClosingメソッドが呼ばれた際に com.sun.star.util.CloseVetoExceptionを送出する方法があります。この方法は、例外を送出できない Basic では不可能です。 -- はにゃ? 2014-08-28 (木) 20:23:41
  • 返信ありがとうございます。basicでは不可能だという事が解っただけで大収穫です。queryclosingのタイミングでpythonからなげてみます。ありがとうございました。 -- しづき 2014-08-29 (金) 14:09:13
  • 試してみたんですが、queryClosingが呼ばれた時点ですでにドキュメントが閉じているため、この方法では駄目ですね。 -- しづき 2014-08-29 (金) 15:52:24
  • 以前は動作した気がしますが・・・。フレームオブジェクトにXCloseListenerを追加すると、フレームごとドキュメントを閉じようとした時には queryClosing からキャンセルできますねぇ。しかし、ファイル - 閉じるではフレーム内のドキュメントのみが閉じてしまいます。 -- はにゃ? 2014-08-29 (金) 20:37:54

感想,コメント,メモ Edit



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