システムwiki

.WAV音声を再生し、コードの実行を継続するときは、DoEventsステートメントの後のコードが実行されていません.

senseim 受付中 最終更新日:2021-06-15 23:40

コードは、サウンドが停止した後に実行を続行するように機能しますが、DoEventsコマンドとWENDステートメントの間のコードを実行することはできません.私は他の2つの形の間で目に見えるように切り替わりたいと思いました.
ループの場合はループ中、WENDステートメントが機能しない間.たとえ私がたとえ私がただ、2つの形状のそれぞれで偽に表示されたとしても、何も示されていません.助けてくれてありがとう!

返信リスト(回答:6)

6 #
JohnKor

あなたのコードを投稿した場合、私たちはあなたが何を意味するのかを考えているかもしれません.

応答6# ->にスキップ
5 #
senseim

以下は問題のコードです:

プライベートサブCommandButton5_Click()

形状として薄暗い
SET OSH= ActivePresentation.Slides(1).Shapes( "sound.wav")
OPL= SlideShowWindows(1).View.player(osh.id)
opl.play.
opl.state= ppplayingの間

doEvents

'コードをここで実行するコードを取得できません.

ActivePresentation.Slides(1).Shapes( "Kilroy左アラート")が表示されます.Visible= false

ActivePresentation.Slides(1).Shapes( "Kilroy right Alert")Visible= false

ActivePresentation.Slides(1).Shapes( "キルロイ左警告")Visible= true

else

ActivePresentation.Slides(1)シェープ( "キルロイ右アラート")Visible= true

ActivePresentation.Slides(1)シェープ(「キルロイ左警告」).Visible= false

の場合は終わります w
終了サブ

応答5# ->にスキップ
2 #
SteveRi

可能性:opl.playが実行された後はミリ秒が発生します.おそらくOPL.Stateはすぐに実際には真実に変わりません.

可能な修正:

まず、音が始まった後にのみ、図形の目に見える状態を変更する必要がある理由はありますか?

音を始める前に目に見える状態を変更した場合、それを知覚できるようにするのに十分な遅延がありますか?

私はそうではないと思います、その中であなたはそのビットのビットをOpl.playの前に置くことができました.

それがうまくいかない場合は、

を試してください.

OplPlay

行動; DoEvents:DoEvents 'はもう少し追加する必要があるかもしれません. テスト

Opl.State= pplaying

です

など

応答2# ->にスキップ
1 #
senseim

私は私がしていることを完全に説明することがより良いだろうと思います.

コマンドボタンによって有効になったスコアキーパープレゼンテーションの勝者を発表するためにテキストを使う.

TheWinnerを文字列

として薄暗くする

オブジェクト

としてDIM SAPIOBJ

sapiobj= createObject( "sapi.spvoice")

を設定します.

sapiobj.rate=-2

私のコードは、勝者が誰であるかを決定します.

sapiobj.speak ""&thewinner

勝者が発表された後、コードは笑い音を鳴らします.

形状

のような薄暗いOSH

SET OSH= ActivePresentation.Slides(1).Shapes( "笑う" Sound.wav ")

OPL= SlideShowWindows(1).View.player(osh.id)
opl.play.
opl.state= ppplaying 'は、キルロイが笑うのをやめるまで待ちます!
行動

WEND

音が演奏している間、私はキルロイの2つの異なる写真の目に見えるものがtrue true true trueを切り替えたいです.

写真は、彼の鼻を左に指しているキルロイと右を指しているものです.

私がこの働くことができれば、これが適用できる可能性が多くあります!

私のプレゼンテーションの名前は "ScoreKeeper Plus"です.

応答5# ->にスキップ
4 #
JohnSRW

あなたはあなたの前の投稿であなたがサウンドが演奏したときにさらなるコードが起こったことを望んでいたと言った?

応答4# ->にスキップ
3 #
senseim

サウンドが再生中に2つの形状の間に表示されるのを切り替える必要がありました.関数呼び出しが機能すると思いますが、わかりません.また、私は2つの形のそれぞれの目に見えるものを最後に持つ必要があります
1/2秒(500ミリ秒).私は遅延と答えを設定し、答えを使うかもしれない答えを公開文を使うかもしれません.私はそのコードのどこにそれを置くのかわかりません.前にこれを説明していません...