MCI を使用して CD オーディオ プレーヤー プログラムを作成していますが、オーディオ ファイルの進行状況をトラック バーに表示できません。
誰も方法を知っていますか?
mciSendString
トラックの長さを取得するために使用する必要があることに注意してください。
MCI を使用して CD オーディオ プレーヤー プログラムを作成していますが、オーディオ ファイルの進行状況をトラック バーに表示できません。
誰も方法を知っていますか?
mciSendString
トラックの長さを取得するために使用する必要があることに注意してください。
Simple MCI Playerから-CodeProject、わずかに変更:
public int GetCurrentPosition()
{
String command = "status MediaFile position";
error = mciSendString(command, returnData,
returnData.Capacity, IntPtr.Zero);
return error == 0 ? int.Parse(returnData.ToString()) : 0;
}
public int GetSongLenght()
{
if (IsPlaying())
{
String command = "status MediaFile length";
error = mciSendString(command, returnData, returnData.Capacity, IntPtr.Zero);
return error == 0 ? int.Parse(returnData.ToString()) : 0;
}
else
return 0;
}
VBでは、Timer Tick Sub内でこれを行いました...本当に簡単です...
rem audio は mcisendstring です。 rem TotalLength は現在のトラックの合計秒数です。
Dim PlayPosition As Long = 0
PlayPosition = audio.SecondsPlayed
If PlayPosition > 0 And PlayPosition < TotalLength Then
TrackBar1.Value = (PlayPosition / TotalLength) * TotalLength
End If