MsgBoxの閉じる「×」ボタンを使えなくするには?

解決


jin  2003-04-16 10:23:42  No: 77721  IP: [192.*.*.*]

MsgBoxの「×」閉じるボタンを使えないようにする(enabled=False)にはどうしたらいいのでしょうか?

編集 削除
とおりすがり  2003-04-16 16:18:15  No: 77722  IP: [192.*.*.*]

ずばり、
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    Cancel = 1
End Sub
です。

編集 削除
とおりすがり  2003-04-16 16:21:11  No: 77723  IP: [192.*.*.*]

すいません。使用できなくする方法ではないのですね…
見えなくする方法は、フォームのプロパティのControlBoxをFalseに変えると可能ですが、最小化や最大化ボタンも見えなくなってしまいます。

編集 削除
とおりすがり  2003-04-16 16:21:12  No: 77724  IP: [192.*.*.*]

すいません。使用できなくする方法ではないのですね…
見えなくする方法は、フォームのプロパティのControlBoxをFalseに変えると可能ですが、最小化や最大化ボタンも見えなくなってしまいます。

編集 削除
nanashi  2003-04-16 17:19:07  No: 77725  IP: [192.*.*.*]

vbOKOnly(デフォルト)、及びキャンセルボタンを含むスタイルを使用しなければ
×ボタンは使えなくなります。
ちなみにAPIでメッセージボックスを作った時も同様です。

もしスタイルに関係なく×ボタンを無効にしたければ
メッセージボックスをフックする処理が必要になってくると思います。

おそらく、メッセージボックス風のフォームで自作した方が簡単で安全だと思います。

編集 削除
jin  2003-04-16 19:38:52  No: 77726  IP: [192.*.*.*]

とおりすがりさん、nanashiさん、お答えありがとうございます。
とおりすがりさん、フォームのプロパティでMsgBoxについての処理もできるのですか?
ちょっと分からなかったです。

nanashiさん、簡単な方法はなさそうですね。
ちょっと急ぎのため、自作フォームを作ることにします。

お二人ともありがとうございました。

編集 削除