音楽

タグの編集
投稿者 ともや  (高校生) 投稿日時 2011/1/30 21:17:30
リストボックスに音楽ファイルを開いて
音楽ファイルをクリックしたら再生できるようにしたいのですが
どうすればいいでしょうか?
投稿者 もちだ  (社会人) 投稿日時 2011/1/31 13:35:11
>どうすればいいでしょうか?
コードを打ち込みましょう。   (笑

冗談はともかく、VBで音楽を鳴らしたことが無かったので勉強がてらやってみました。
>音楽ファイルをクリックしたら再生
http://homepage1.nifty.com/rucio/main/dotnet/Samples/Sample060Playmp3.htm
フォームにボタン1とListBox1。ListBox1には001.mp3とか、そういう感じで拡張子まで入ってると仮定。


    Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As StringByVal lpstrReturnString As StringByVal uReturnLength As IntegerByVal hwndCallback As IntegerAs Integer

    Private Sub ListBox1_Click(ByVal sender As ObjectByVal e As System.EventArgs) Handles ListBox1.Click
        Call musicStop()
        'クリック時のテキスト(sender.text)をファイル名として投げる 
        Call mciSendString(String.Format("open ""{0}"" alias MySound", sender.text), "", 0, 0)
        Call mciSendString("play MySound""", 0, 0)
    End Sub

    Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles Button1.Click
        Call musicStop()
    End Sub

    Private Sub musicStop()
        '曲を止める 
        Call mciSendString("stop MySound""", 0, 0)
        Call mciSendString("close MySound""", 0, 0)
    End Sub

こんな感じでいいのかな(とりあえず動く)。