当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。
記事そのもののリンクについてはご自由に行っていただいてよいです。

テクてく Lotus 技術者 Slack に参加しよう!

2010年4月1日木曜日

NotesTimerクラスを試してみる

今日から新年度ですね(弊社は違うんですが・・・)。
4月1日ということで、エイプリルフールです。楽しい嘘はあったでしょうか。

筆者のブログでは、楽しくても楽しくなくても「嘘はなし!」(たまに誤りはありますが・・・)ということで行きます。

では、新年度1回目のクリックを・・・にほんブログ村 IT技術ブログへ
ありがとうございました。


さて、今日のサンプルです。
NotesTimerクラスというものです。あまりなじみがないのではないでしょうか。
どういったものかと言うと、指定の秒数が経過したら、イベントを発生させるというものです。
イベントの内容は、自分で作成したプログラム(LotusScript)です。

サンプルは、あるフォームに仕掛けることで、文書が開いてから10秒経過する毎にメッセージを表示するというものです。文書が閉じるまでずっと有効です。

'フォームの(Globals)のDeclarationsにNotesTimerクラスを定義します。
'これは、このフォームを開いている間は、変数を有効にするためです。
Dim ntimer As NotesTimer


'【文書をオープンしたときにイベントを発生させるようにしてみます】
Sub Postopen(Source As Notesuidocument)
    'NotesTimerクラスをセットします
    '1番目の引数は、10秒という事を意味します。10秒単位でイベントが発生すると言うことです。
    Set ntimer = New NotesTimer( 10, "NotesTimerクラスのテスト" )
    
    'NotesTimerクラスのAlarmイベントを発生させます
    On Event Alarm From ntimer Call DispMsg
End Sub


'【イベントで動作する関数を新しく作成します】
Sub DispMsg( Source As NotesTimer )
    'NotesTimerクラスのAlarmイベントで呼び出される関数です
    
    Msgbox "ここにお知らせメッセージを表示すると面白いかも。", MB_OK + MB_ICONINFORMATION, "NotesTimerクラスのテスト"
End Sub



画面にインフォメーションを出したい。でも、1回出しただけでは忘れられてしまう。どうしよう・・・という時に使えるかな?
後は、試供品のNotesDBを作成したときに、定期的にメッセージを表示してみるという事にも使えますね。

試してみてください。




【PR】ノーツ/ドミノに関するお問い合わせは下記まで【PR】
単純なDBのカスタマイズから他アプリケーションとの連携までご要望にお応えします
Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

0 件のコメント: