1

誰かが助けてくれることを願っています!:)

私が達成しようとしているのは、reader_Speak() メソッドが話し終わったときに true を返すようにすることです。古い SpeechLib の WaitUntilDone に似ています。

これが私が持っているコードです:-

    public void reader_Speak(string strSpeech)
    {
        reader = new SpeechSynthesizer();
        reader.SpeakAsync(strSpeech);
        reader.SpeakCompleted += new EventHandler<SpeakCompletedEventArgs>(reader_SpeakCompleted);
    }

    private void reader_SpeakCompleted(object sender, SpeakCompletedEventArgs e)
    {
        reader.Dispose();
    }

これが私が欲しいものです:-

    public bool reader_Speak(string strSpeech)
    {
        reader = new SpeechSynthesizer();
        reader.SpeakAsync(strSpeech);
        reader.waituntildone();
        return true;
    }

誰でも何か提案はありますか?ありがとう。

4

1 に答える 1

2

SpeakAsync と完了したコールバックを使用する代わりに、Speakブロックしているメソッドを使用するだけです。

于 2012-07-11T18:18:33.943 に答える