初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2013-10-12 15:29:26

bababa
Guest

指定時刻になったら指定したファイルを再生する方法

はじめまして。

Windows7 Filemaker11 advancedを使っています。

指定時刻に音声ファイルを開くプログラムを作ろうと思っています。
指定時刻のリストはExcelで作成し、Filemakerにインポートするようにしました。
現在時刻をスクリプトで1秒おきに読み込み、読み込んだ現在時刻と指定時刻が同じ場合音声ファイルが再生されるように設定しました
(GetAsNumber(現在時刻)=GetAsNumber(指定した時刻)のとき、音声ファイルを再生するというスクリプトを組みました)。
その後次のレコードに移動し、指定時刻になったら再生するというふうに設定しました。
しかし、指定した時刻になっても音声ファイルが再生されない場合があります。
調べてみると画面に表示させた現在時刻が1秒とばしで表示されている場合があり、その現象と指定した時刻が重なった場合に
音声ファイルが再生されていないことがわかりました。

何か解決策がありますでしょうか。

よろしくお願い致します。

#2 2013-10-12 15:54:20

wader
Member

Re: 指定時刻になったら指定したファイルを再生する方法

再生に1秒以上かかることはないんですか?再生中に次の指定時刻が来た場合どうします?

再生したらフラグを立てて、
現在時刻>指定した時刻
で再生するとか、1秒おきでなく
現在時刻<指定した時刻
のものを
指定した時刻-現在時刻
秒後に再生する。

1秒毎というのを、ontimerでやってるんじゃないみたいですね。

Offline

#3 2013-10-12 16:38:57

bababa
Guest

Re: 指定時刻になったら指定したファイルを再生する方法

wader wrote:

再生に1秒以上かかることはないんですか?再生中に次の指定時刻が来た場合どうします?

再生したらフラグを立てて、
現在時刻>指定した時刻
で再生するとか、1秒おきでなく
現在時刻<指定した時刻
のものを
指定した時刻-現在時刻
秒後に再生する。

1秒毎というのを、ontimerでやってるんじゃないみたいですね。

開始時のスクリプト-----

On Timerスクリプトをインストール[「A」;間隔:1] (Aはスクリプト名)

スクリプト「A」-----

スクリプト一時停止/続行[間隔(秒): Time ( 0;0;0 )]
現在の時刻を挿入[選択; (現在時刻フィールド)]
IF[GetAsNumber (現在時刻フィールド)=GetAsNumber (指定時刻フィールド)]
スクリプト実行[「音声ファイルを再生するスクリプト」]
レコード/検索条件/ページヘ移動[次の;最後まできたら終了]
End IF

-----
上記のスクリプトです。
指定時刻の間隔は最短で1分で、音声ファイルは長くて5秒ほどです。

教えていただいように、他の方法をためしてみます。

#4 2013-10-14 14:00:06

bababa
Guest

Re: 指定時刻になったら指定したファイルを再生する方法

ひとまずの回避策として、現在時刻=指定時刻 または 現在時刻=指定時刻+1sec の時に音声ファイルを再生するように指定したら鳴るようになりました。

#5 2013-10-14 18:18:09

Shin
Member

Re: 指定時刻になったら指定したファイルを再生する方法

現在時刻 ≧ 指定時刻
にされるのが良いかと思いますが。

または、
スクリプト「A」-----

スクリプト実行[「音声ファイルを再生するスクリプト」]
On Timerスクリプトをインストール[「A」;間隔: 0] (Aはスクリプト名)

-----

としておき、
開始スクリプトに、
On Timerスクリプトをインストール[「A」;間隔: ( 指定時刻 - Get ( 時刻 ) )] (Aはスクリプト名)

としておくのが最善だと思います。

Offline

#6 2013-10-15 16:22:10

bababa
Guest

Re: 指定時刻になったら指定したファイルを再生する方法

Shin wrote:

スクリプト「A」-----

スクリプト実行[「音声ファイルを再生するスクリプト」]
On Timerスクリプトをインストール[「A」;間隔: 0] (Aはスクリプト名)

-----

としておき、
開始スクリプトに、
On Timerスクリプトをインストール[「A」;間隔: ( 指定時刻 - Get ( 時刻 ) )] (Aはスクリプト名)

としておくのが最善だと思います。

この方法で動きました。
ありがとうございます!

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 520.13 KiB (Peak: 524.67 KiB) ]