Hola a tod@s!
Estoy haciendo un componente vcl para comunicar con un modulo industrial por puerto serie.
Lo he derivado de otro llamado CustomComPort que sirve para gestionar el puerto serie. Este tiene un evento llamado OnRxChar, que se ejecuta cuando cuando se recibe caracteres por el puerto serie. Tiene tambien un par de metodos, para leer los caracteres recibidos y para mandar cadenas (ReadStr(AnsiString cadena) y WriteStr(AnsiString cadena)).
Cuando le mando al modulo una cadena de peticion de datos, este responde con una cadena que contiene los datos que le solicito. Lo que quiero hacer es automatizar la recepcion de datos. Es decir, supongamos que en el componente hijo tengo una propiedad llamada DatosCanal, que debe contener lo que se recibe por el puerto serie. Lo que quiero hacer es que mi componente por si mismo lea la cadena cuando la reciba y la guarde haciendo:
Código:
TMiComponente::ReadStr(DatosCanal);
Pero no se como declarar el metodo desde dentro de la clase para que se ejecute cuando se reciba un evento OnRxChar.
En otras palabras: quiero que el evento se ejecute desde dentro de la clase, si tener que escribir luego en la aplicacion que contiene el componente:
Código:
void __fastcall TForm1::MiComponente1RxChar (TObject *Sender, int Count)
{
MiComponente1->ReadStr(MiComponente1->DatosCanal);
}
Alguien sabe como se puede hacer.
_________________
SALU2............Bastian!