Как я могу сделать if, когда строки закончили чтение, проверить, остается ли if все еще положительным? - PullRequest
0 голосов
/ 02 августа 2020

Я делаю программу распознавания, и у меня проблема в том, что я должен перепроверить, остается ли положительное значение if

Мой код:

    {
        RECOGNITION = true;
        engine_load();
    }

    SpeechSynthesizer synth = new SpeechSynthesizer();
    PromptBuilder promptBuilder = new PromptBuilder();
    SpeechRecognitionEngine NSK = new SpeechRecognitionEngine();

    
  
    #endregion


    private void speechRecognition_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) 
    {
        MessageBox.Show("speech recognized:" + e.Result.Text.ToString());
    }

    

   
// In this If I have the problem

    private void engine_load()
    {



        if (RECOGNITION == true)
        {
            engine = new SpeechRecognitionEngine();
            engine.SetInputToDefaultAudioDevice();
            Grammar g = new DictationGrammar();
            engine.LoadGrammar(g);
            engine.RecognizeAsync(RecognizeMode.Multiple);
            engine.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(engine_SpeechRecognized);
            Console.ReadLine();
            
           
        }

    }

Мне нужно, чтобы каждый раз, когда я говорю, система перед распознаванием слов проверяет, что переменная «Распознавание» истинна.

Если кто-нибудь знает, как мне помочь, я был бы очень признателен. Спасибо

1 Ответ

0 голосов
/ 02 августа 2020

Рассматривали ли вы использование while-l oop?

while(RECOGNITION)
{
    ...
}

Если вы не хотите использовать while, вы можете добавить прыжок после if

returnHere:

//Your stuff here
if (RECOGNITION == true)
{
    ...
}

//jump back if condition is still true
if(still true) { goto returnHere; }
...