ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年3月19日(火) 15:27

全ての表示時間は UTC+09:00 です




新しいトピックを投稿する  トピックへ返信する  [ 3 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2006年8月08日(火) 15:52 
Sub MainWnd_PlayButton_Click()内において、
'トラックバーの範囲を設定
Dim nMax As Integer

nMax=(MCI_MSF_MINUTE(msp.dwReturn)*60 + MCI_MSF_SECOND(msp.dwReturn)) * 10
やはり、nMaxは、AB424と同じく、異常な値となります。

SendMessage(hTrackBar,TBM_SETRANGE,0,MAKELONG(0,nMax)) を
SendMessage(hTrackBar,TBM_SETRANGE,0,MAKELONG(0,(MCI_MSF_MINUTE(msp.dwReturn)*60 + MCI_MSF_SECOND(msp.dwReturn)) * 10)) にすると問題ありません。
AB424でのバグがそのままのようです。

また、これはMCI側の問題だと思いますが、トラックバーを移動しても曲の最初からしか再生されません。
動作の安定化の為に一度止めると正しく動きます。
Dim dwWk As Dword '動作安定化の為のダミー
mciSendCommand(mop.wDeviceID, MCI_STOP, MCI_NOTIFY, dwWk) '停止コマンド追加
を、
bErr=mciSendCommand(mop.wDeviceID,MCI_SEEK,MCI_TO,mciSeekParms)
の前に追加。
コードサンプルとして、CDPlayerをパッケージに含められる場合は、検討していただければと思います。


通報する
ページトップ
   
 記事の件名:
投稿記事Posted: 2006年8月08日(火) 19:38 
オフライン
Site Admin

登録日時: 2005年5月30日(月) 15:08
記事: 535
ご報告ありがとうございます。

厳密に型サイズを重視しすぎた仕様が原因で発生する不具合のようです。

必要に応じて、要求される型に暗黙的に変換し、このような問題を回避するための修正を行おうと思います。

次回のバージョンアップで対処いたしますので、今しばらくお待ちください。


通報する
ページトップ
 記事の件名:
投稿記事Posted: 2006年9月05日(火) 16:37 
> 次回のバージョンアップで対処いたしますので、今しばらくお待ちください。
ありがとうございます。

CP2で、424のサンプルのCDPlayerで、演算正しく行われているのを確認しました。
あとこのサンプルで問題なのは、トラックバーを右端までスライドしても、曲の終わりと同期していないことだけですね。
これは、最初に書いた
Dim dwWk As Dword '動作安定化の為のダミー
mciSendCommand(mop.wDeviceID, MCI_STOP, MCI_NOTIFY, dwWk) '停止コマンド追加
を、
bErr=mciSendCommand(mop.wDeviceID,MCI_SEEK,MCI_TO,mciSeekParms)
の前に追加すると完璧な同期となります。
コードサンプルとして収録されるのであれば、検証していただければと思います。


通報する
ページトップ
   
期間内表示:  ソート  
新しいトピックを投稿する  トピックへ返信する  [ 3 件の記事 ] 

全ての表示時間は UTC+09:00 です


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[2人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean