MsgBoxの音を出さないようにするには?

解決


だい2  2004-09-21 00:16:32  No: 85653

いつもお世話になっています。
MsgBoxが表示されるときに「ポン」とか「ピン」
とかの音が出ますが、これを出さないようにはできますか?
ちなみに、スピーカはそのままで・・・。

ご存知出来たら教えてください。お願いします。
VB6.0です。


魔界の仮面弁士  2004-09-21 07:57:09  No: 85654

MsgBox関数の代わりに、ご自分でモーダルなフォームを
表示させるようにすれば、無音でメッセージを表示できます。
標準モジュールに「MsgBox」という名の Public Function を
配置するようにすれば、呼び出し側のプログラムの修正も不要かと。

ただ、ほかのアプリケーションの場合でも、メッセージ表示時には、
コントロールパネルで設定された音が鳴りますよね。
それがWindowsの標準的な仕様なのですから、自身のアプリだけ
動作を変える必要は無い気がしますけれど……。

# 昔は、MsgBox表示に、規定の警告音を出す方法が質問に上がって
# いたのですが、今は逆に、音を出さない方法が質問されるんですね。(^^;)


だい2  2004-09-26 00:59:14  No: 85655

魔界の仮面弁士様ありがとうございます。
>動作を変える必要は無い気がしますけれど……。
そのとうりですが、ちょいとわけありで・・・。

話は変わりますが、モーダルにするには、どのように
すればよいのでしょうか?
実はMSGBOXを使っているのもモーダル状態にしたいが
為だったりします・・・。
モーダル状態にしておいて、数秒後に自力で復活
するようにできれば、最高なのですが・・・。
無理でしょうか?

よろしくお願いします。


とろ  2004-09-26 01:07:36  No: 85656

フォームのShowメソッドの引数でモーダルが指定できます。

>モーダル状態にしておいて、数秒後に自力で復活
>するようにできれば、最高なのですが・・・。

表示するダイアログのLoadイベントでタイマーを起動して
そこで自身をUnloadすれば希望の動作になりますね。


魔界の仮面弁士  2004-09-26 05:53:26  No: 85657

> MsgBox関数の代わりに、ご自分でモーダルなフォームを
> 表示させるようにすれば、無音でメッセージを表示できます。

以下、サンプルです。

'==== 標準モジュール ====
Option Explicit
Public Function MsgBox( _
    ByVal Prompt As String, _
    Optional ByVal Buttons As VbMsgBoxStyle = vbOKOnly, _
    Optional ByVal Title As String, _
    Optional ByVal HelpFile As String, _
    Optional ByVal Context As Long) As VbMsgBoxResult

    MsgBox = Form2.MsgBox(Prompt)
End Function

'==== Form2 ====
Option Explicit
Private Result As VbMsgBoxResult
'アイコンやボタンの指定は省略しています。
'必要に応じて、コードを書き加えて見てください。
Friend Function MsgBox(ByVal Prompt As String) As VbMsgBoxResult
    Result = vbCancel
    Load Me
    Me.Label1.Caption = Prompt
    Me.Show vbModal
    MsgBox = Result
End Function
Private Sub Command1_Click(Index As Integer)
    If Index = 0 Then
        Result = vbOK
    Else
        Result = vbCancel
    End If
    Unload Me
End Sub


だい2  2004-09-27 19:15:30  No: 85658

とろ様、魔界の仮面弁士様
大変ありがとうございました。
解決いたしました。
勉強不足ですみませんでした。
これからも、よろしくお願いいたします。
m(_ _)m


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加