JavascriptProva

sabato 7 settembre 2013

Intercettare gli eventi di una classe.

Devo catturare un evento generato da una classe.
Come fare?
Mettiamo in ordine le idee...

Nella classe "mittente" metto questa riga fra le dichiarazioni delle variabili:
Public Event Zum()
(Zum è un nome di fantasia).

...e nel codice dell'evento metto:
   Public Sub evento(ByVal sender As Object, ByVal e As SpeechRecognizedEventArgs) Handles motore.SpeechRecognized
       
......

        RaiseEvent Zum()
    End Sub


Nel programma principale dichiaro Withevents l'istanza della classe:
Public Class Form1
    Dim WithEvents mioSpeak As jacSpeak

.....
E nel metodo che voglio evocare in seguito all'evento Zum dell'istanza mioSpeak della classe jacSpeak uso Handles:
    Sub prova() Handles mioSpeak.Zum
        Label1.Text =mioSpeak.risultato
    End Sub
Questo è un primo metodo (che ricordo anche dal VB6), ma non credo proprio che sia l'unico: se l'evento della classe genera un risultato, inoltre, non so come fare, a parte il dichiarare una variabile pubblica della classe che venga modificata dall'evento (in questo caso la variabile Risultato).
Ma non mi sembra una soluzione "estetica"...

Nessun commento:

Posta un commento