LoadGrammarCompletedEventArgs Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece dados para o LoadGrammarCompleted evento de um SpeechRecognizer ou SpeechRecognitionEngine objeto.
public ref class LoadGrammarCompletedEventArgs : System::ComponentModel::AsyncCompletedEventArgs
public class LoadGrammarCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
type LoadGrammarCompletedEventArgs = class
inherit AsyncCompletedEventArgs
Public Class LoadGrammarCompletedEventArgs
Inherits AsyncCompletedEventArgs
- Herança
Exemplos
O exemplo seguinte cria um reconhecedor de fala partilhada, e depois cria dois tipos de gramáticas para reconhecer palavras específicas e para aceitar ditado livre. O exemplo carrega assíncronamente todas as gramáticas criadas para o reconhecedor. Os responsáveis pelos reconhecedores LoadGrammarCompleted e SpeechRecognized eventos reportam os resultados do reconhecimento e qual a gramática utilizada para realizar o reconhecimento.
using System;
using System.Speech.Recognition;
namespace SampleRecognition
{
class Program
{
private static SpeechRecognizer recognizer;
public static void Main(string[] args)
{
// Initialize a shared speech recognition engine.
recognizer = new SpeechRecognizer();
// Add a handler for the LoadGrammarCompleted event.
recognizer.LoadGrammarCompleted +=
new EventHandler<LoadGrammarCompletedEventArgs>(recognizer_LoadGrammarCompleted);
// Add a handler for the SpeechRecognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Add a handler for the StateChanged event.
recognizer.StateChanged +=
new EventHandler<StateChangedEventArgs>(recognizer_StateChanged);
// Create the "yesno" grammar and build it into a Grammar object.
Choices yesChoices = new Choices(new string[] { "yes", "yup", "yah}" });
SemanticResultValue yesValue =
new SemanticResultValue(yesChoices, (bool)true);
Choices noChoices = new Choices(new string[] { "no", "nope", "nah" });
SemanticResultValue noValue =
new SemanticResultValue(noChoices, (bool)false);
SemanticResultKey yesNoKey =
new SemanticResultKey("yesno", new Choices(new GrammarBuilder[] { yesValue, noValue }));
Grammar yesnoGrammar = new Grammar(yesNoKey);
yesnoGrammar.Name = "yesNo";
// Create the "done" grammar within the constructor of a Grammar object.
Grammar doneGrammar =
new Grammar(new GrammarBuilder(new Choices(new string[] { "done", "exit", "quit", "stop" })));
doneGrammar.Name = "Done";
// Create a dictation grammar.
Grammar dictation = new DictationGrammar();
dictation.Name = "Dictation";
// Load grammars to the recognizer.
recognizer.LoadGrammarAsync(yesnoGrammar);
recognizer.LoadGrammarAsync(doneGrammar);
recognizer.LoadGrammarAsync(dictation);
// Keep the console window open.
Console.ReadLine();
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Grammar({0}): {1}", e.Result.Grammar.Name, e.Result.Text);
// Add event handler code here.
}
// Handle the LoadGrammarCompleted event.
static void recognizer_LoadGrammarCompleted(object sender, LoadGrammarCompletedEventArgs e)
{
string grammarName = e.Grammar.Name;
bool grammarLoaded = e.Grammar.Loaded;
if (e.Error != null)
{
Console.WriteLine("LoadGrammar for {0} failed with a {1}.",
grammarName, e.Error.GetType().Name);
// Add exception handling code here.
}
Console.WriteLine("Grammar {0} {1} loaded.",
grammarName, (grammarLoaded) ? "is" : "is not");
}
// Put the shared speech recognizer into "listening" mode.
static void recognizer_StateChanged(object sender, StateChangedEventArgs e)
{
if (e.RecognizerState != RecognizerState.Stopped)
{
recognizer.EmulateRecognizeAsync("Start listening");
}
}
}
}
Observações
Uma instância de LoadGrammarCompletedEventArgs é criada quando o SpeechRecognitionEngine objeto eleva o seu SpeechRecognitionEngine.LoadGrammarCompleted ou o SpeechRecognizer objeto eleva o seu LoadGrammarCompleted evento. Os eventos são levantados quando as chamadas para os LoadGrammarAsync métodos terminam.
Para obter informação sobre o Grammar objeto que foi carregado, acede à Grammar propriedade no handler do evento.
Se o reconhecedor encontrar uma exceção durante a operação, a Error propriedade é definida para a exceção e a Loaded propriedade do associado Grammar pode ser false.
Propriedades
| Name | Description |
|---|---|
| Cancelled |
Recebe um valor que indica se uma operação assíncrona foi cancelada. (Herdado de AsyncCompletedEventArgs) |
| Error |
Recebe um valor que indica qual erro ocorreu durante uma operação assíncrona. (Herdado de AsyncCompletedEventArgs) |
| Grammar |
O Grammar objeto que completou o carregamento. |
| UserState |
Obtém o identificador único para a tarefa assíncrona. (Herdado de AsyncCompletedEventArgs) |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| RaiseExceptionIfNecessary() |
Levanta uma exceção fornecida pelo utilizador se uma operação assíncrona falhou. (Herdado de AsyncCompletedEventArgs) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |