2010/03/15

Access2007 アプリケーション終了のこと

意図しない方法でのアプリケーション終了
  1. アプリケーション閉じるボタン押下
  2. Alt+F4押下
  3. officeボタン→閉じる押下
1は APIとかでボタンを非活性に2.はキーイベントなどでハンドリングで対応できたんだけど、3だけ対応できてなかった。よーく考えてみたらフォームのUnloadイベントで対応すればよかった。
--MainForm--
Option Compare Database
Option Explicit

Private Flg as Boolean

Private Sub Form_Unload(Cancel As Integer)
    Cancel = Not Flg
End Sub 

Private Sub btnApplicationQuit_Click()
    Flg = True
    Application.Quit
End Sub
Alt+F4/アプリケーション閉じるボタン押下/タスクバーで閉じるのいずれにも対応できる。オープンされている別のフォームにも影響できて閉じることはなかった。プロセスの終了かQuit押下以外に終了できなくなる。

0 件のコメント: