HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2010
0504
knashメディアプレイヤーのシークバー(トラックバー、トラックボックス)について2解決


knash

リンク

2010/5/4(Tue) 15:28:53|NO.32444

はじめして、knashと申します。
現在、MCIを使った簡単なメディアプレイヤーを作っています。
trackboxを使ってシークバーを作り、
動画、音楽の再生場所(「今、何分何秒の部分を再生しています」など)を表示させながら、
trackboxの「つまみ」を使って、マウスで再生場所を変更させたいと考えています。
今、動画、音楽の再生場所を表示させるところまではできたのですが、
「つまみ」を使ってマウスで再生場所を変更させることができずに困っています。
trackposをうまく使えればと思うのですが、思うようにいきません。
現時点では、以下のようなスクリプトを組んでいます。

#include "llmod3.hsp"
#include "trackbox.hsp"

dialog "mid;*.wav;*.mpg;*.avi;*.mp3",16
mci "open \""+refstr+"\" alias mysound"
onexit *e
mci "set mysound time format ms"
mci "status mysound length":mysound_length=stat
mci "play mysound"

trackbox 200,40,0
trackrng 0,100

repeat
mci "status mysound position"
tr=stat : ss=tr/1000 : mm=ss/60 : hh=mm/60
h=hh : m=mm-(hh*60) : s=ss-(mm*60)
bar=100*tr/mysound_length
trackpos bar,0
title "time="+h+":"+m+":"+s
wait 10
loop

*e
mci "close all"
end

お分かりになる方、是非アドバイスをいただきたいと思います。
よろしくお願いします。
ちなみに、HSPのヴァージョンは3.2で、
APIを用いたプログラムはこれまで組んだことがなく、
HSP以外の言語でのプログラミング経験もありません。



この記事に返信する


inovia

リンク

2010/5/4(Tue) 17:03:51|NO.32445


wait 10
の後にでも

trackpos 0,1 _bar=stat if bar!=_bar{ mci "seek mysound to "+(_bar*mysound_length/100) mci "play mysound" }

にしとけばOK。



knash

リンク

2010/5/4(Tue) 17:47:59|NO.32446

質問者のknashです。
無事、実行できました。
この件で2日、いろいろなサイトを探し回っていたので、
解決できてとてもうれしいです。

inoviaさん、ありがとうございました。



ONION software Copyright 1997-2023(c) All rights reserved.