Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Tomar evento de componente (https://www.clubdelphi.com/foros/showthread.php?t=73948)

rhino0nt 25-05-2011 23:27:59

Tomar evento de componente
 
Tengo una unidad en donde en la parte del private declaro una variable para utilizar un objeto de la siguiente manera:

Código:

  private
    { Private declarations }
    procedure ReproductorTerminado();
    var daAudioPregunta, daAudioRespuesta: TDXAudioOut;
  public

Luego utilizo esta variable para crear un objeto en donde cargo un stream de audio que utilizo y reproduzco, lo que necesito ahora es saber cuando el audio se termina de reproducir, para esto tengo que en el componente TDXAudioOut existe un procedimiento llamado OnDone que se ejecuta cuando el audio termina de reproducirse, mi duda es como puedo hacer para tomar ese evento desde el objeto que yo he creado y en este caso asignarle a ese evento mi evento ReproductorTerminado().

He visto otros ejemplos en el foro y he tratado de implementarlos sin éxito, de verdad que ya he estado buscando datos al respecto pero no logro dar con la solución.

De antemano, gracias.

ElKurgan 26-05-2011 07:27:20

Si no he entendido mal, y si ambos (on done y ReproductorTerminado) tienen los mismos parámetros de entrada, lo que se suele hacer es asignarlo cuando creas el componente; por ejemplo:

Código Delphi [-]
 
 
begin
  daAudioRespuesta := TDXAudioOut.Create;
  daAudioRespuesta.OnDone := ReproductorTerminado;
end;
Ahora bien, si es otra cosa la que necesitas, deberías ser un poco más claro

Saludos

rhino0nt 28-05-2011 19:30:20

Tomar evento de componente
 
Al principio yo pensé también que era por ahí, pero lo he intentado de esa manera y me marca error al compilar diciendo que no se puede asignar el evento.

Asi que por ese lado no me ha funcionado.

ElKurgan 29-05-2011 10:21:18

¿Y en concreto que mensaje de error te da? ¿Es posible que sea porque es un método private?

Saludos

rhino0nt 30-05-2011 16:06:19

Creo que si era por la parte de ser métodos private, al final tome el problema desde otro ángulo y ya lo tengo resuelto. Muchas gracias por el apoyo.


La franja horaria es GMT +2. Ahora son las 19:41:44.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi