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


HSPTV!掲示板


未解決 解決 停止 削除要請

2010
1009
Taヴぁプレイリスト付き音楽プレイヤーに次曲へボタンをつけたい5未解決


Taヴぁ

リンク

2010/10/9(Sat) 22:58:38|NO.35288

自分が製作している音楽Playerなんですが、
プレイリストに複数曲追加しても、自動的に次曲へいかず、
永久リピートになります・・・
これを自動で次曲にまわす機能をつける方法と、
次曲、前曲のButtonをつける方法を教えてほしいです。
(あと、教えてくれたら、音と同期してながれるエフェクトてきなのもほしいとおもいます)

☆:Miniぷれいやーは気にしないでください。

fullpath="":filepath=""
*player onkey *read tt="(MP3Playern v2.0β)" title tt screen 0,330,173,0 onexit goto*ss font "Webdings",25 objmode 2,0 pos 0,0 objsize 113,40 button "4",*oky pos 112,0 objsize 108,40 button ";",*oky2 pos 219,0 objsize 111,40 button "<",*s_top font "" objmode 2,0 pos 112,40 objsize 108,20 button "情報",*ver pos 0,40 objsize 113,20 button "MiniPlayern(β)",*miniplayer pos objsize 160,180 pos 219,40 objsize 113,20 button "MP3読み込み",*fl listbox list,,"" listid=stat pos objsize 160,180 stop *miniplayer screen 0,119,244,0 onexit goto*ss font "Webdings",25 objmode 2,0 pos 0,0 objsize 119,40 button "4",*okymini pos 0,40 objsize 60,40 button ";",*oky2 pos 60,40 objsize 59,40 button "<",*s_top font "" objmode 2,0 pos 0,92 objsize 119,20 button "戻す",*player pos objsize 160,180 pos 0,112 objsize 119,20 button "MP3読み込み",*fl listbox list,,"" listid=stat pos objsize stop *fl dialog "mp3;",16,"MP3File" if stat=0:stop fname=refstr notesel fullpath fullpath+=""+fname+"\n" notesel filepath filepath+=""+getpath(fname,8)+"\n" objprm listid,filepath gsel 0,0 if pflag=1:goto *mainloop stop *oky if flag=1:mci "":pflag=1:goto *mainloop file="" notesel fullpath noteget file,list mci "close all" mci "open \"" + file + "\" alias music":if stat=-1:stop mci "status music length":m_length=stat nagasa=m_length/1000 if nagasa/60>0:_fun=nagasa/60:n_byo=nagasa\60:else:n_byo=nagasa:n_fun=0 if n_byo<10:n_byoz="0"+n_byo:n_byo=n_byozn color 0,0,0 : boxf 0,330,330,0 fn = ""+getpath(file,9)+"" pos 0,70 color 255,255,255 font "MS ゴシック",12 mes "ファイル名:" pos 65,70 mes fn fn2 = ""+getpath(file,2)+"" pos 0,82 font "MS ゴシック",12 mes " 音楽形式 :" pos 65,82 mes fn2 mes "MP3Playern v2.0β" pos 0,94 font "MS ゴシック",12 mes "バージョン:" pos 65,94 mes strsize : pos 120,74 : mes"" pos mci "play music repeat":pflag=1 goto *mainloop *okymini if flag=1:mci "play music repeat":pflag=1:goto *mainloop file="" notesel fullpath noteget file,list mci "close all" mci "open \"" + file + "\" alias music":if stat=-1:stop mci "status music length":m_length=stat nagasa=m_length/1000 if nagasa/60>0:n_fun=nagasa/60:n_byo=nagasa\60:else:n_byo=nagasa:n_fun=0 if n_byo<10:n_byoz="0"+n_byo:n_byo=n_byoz color 0,0,0 : boxf 0,330,330,0 fn = ""+getpath(file,9)+"" pos 0,80 color 255,255,255 font "MS ゴシック",12 mes "ファイル:" pos 30,80 mes fn mci "":pflag=1 goto *mainloop *oky2 mci "pause music" flag=1 pflag=0 stop *s_top mci "stop f" mci "close music" flag=0 pflag=0 title tt stop *ver dialog {" MP3Playern v2.0β By.ただし\nβ版(MiniPlayern)です。 "},0, "MP3Playern情報" if pflag=1:goto *mainloop stop *ss end *read objsel -1 actobj=stat if actobj!=listid:stop if wparam=13{ goto *oky } if pflag=1:goto *mainloop stop *mainloop mci "status music position" ps=stat imano=stat/1000 if imano/60>0:{ i_fun=imano/60 i_byo=imano\60 }else{ i_byo=imano:i_fun=0 } wait 5 if i_byo<10:title tt+" "+i_fun+":0"+i_byo+"/"+n_fun+":"+n_byo:goto *mainloop title tt+" "+i_fun+":"+i_byo+"/"+n_fun+":"+n_byo goto *mainloop stop



この記事に返信する


ANTARES

リンク

2010/10/10(Sun) 01:33:48|NO.35289

>プレイリストに複数曲追加しても、自動的に次曲へいかず、
>永久リピートになります・・・
 まず、mciで永久リピートになるように指定しているのをやめなければ
最初の曲以外を演奏することはできません。

 次に、*mainloop内で、演奏が終了している場合は
曲を読み直すように制御する必要があります。
演奏終了判定がわからなければ「mci status playing」を
過去ログから検索してください。

 最後にlistの値を制御してnotegetで次のファイルを
読むようにする必要があります。

 実際にやってみたところ、「演奏が終了している場合は
曲を読み直すように制御する」のがちょっと難しいようです。
以下のようなロジックを組む必要があります。

if playflag { 演奏中でなければplayflagを0にして曲の読み直しへ } else { 演奏中ならplayflagを1にする }



Taヴぁ

リンク

2010/10/10(Sun) 22:15:48|NO.35290

ロジック///?
難しいですね\\\.

\\\こう?w


if playflag { if play ,0:playflag=0&Yominaosi;演奏中でなければplayflagを0にして曲の読み直しへ } else { if play ,1:playflag=1;演奏中=Playflagは1にする }



ANTARES

リンク

2010/10/10(Sun) 23:07:27|NO.35291

 もっと勉強してください。



check

リンク

2010/10/10(Sun) 23:30:08|NO.35292

フラグの0と1を交換するにはXOR演算が役に立つぞ。

a = 0 a ^= 1 mes a a ^= 1 mes a



ANTARES

リンク

2010/10/11(Mon) 23:58:33|NO.35307

 検索はサイト内検索ではなく記事検索の方です。



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