人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VB2005の音楽再生プログラムを書いています。教えtください。事前にline()という配列にファイル名が格納されています。30くらいのファイルを連続再生します。以下のコードは正しく再生されます。TextBox4.Textに現在再生しているファイル名を表示したいのですが、表示されません。すべての再生が終わると、最後のファイル名が表示されます。デバックするとファイル名は正しく入っています。どうやら音楽再生側に制御がわたりっきりでフォーム側への制御が戻ってこないように見えます。よってスレッドでの再生としましたが、同様に表示されませんでした。どのようにしたらよろしいでしょうか?

Private Sub Button1_Click(..) Handles Button1.Click
Dim j As Integer
Dim threadA As Thread
For k = 0 To i - 1
For j = 0 To Integer.Parse(TextBox3.Text) - 1
TextBox4.Text = line(k)
threadA = New Thread(New ThreadStart(AddressOf TestMethod))
threadA.Start()
threadA.Join()
System.Threading.Thread.Sleep(Integer.Parse(TextBox1.Text))
Next j
Next k
End Sub
Private Sub TestMethod()
player = New System.Media.SoundPlayer("c:\" + line(k) + ".wav")
player.PlaySync()
End Sub

●質問者: mai_mai_mail
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● みかん
●0ポイント

http://homepage3.nifty.com/midori_no_bike/CS/sample.html


2 ● oil999
●100ポイント

TestMethod内で
TextBox4.Text = line(k)
を実行するように変えてみてください。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ