Bueno, en primer lugar gracias por las respuestas y apoyándome en ellas voy a intentar explicar mejor lo que me ocurre.
Tengo lo siguiente
//*****************************************************
void __fastcall TForm1::AppMessage(tagMSG &Msg, bool &Handled)
{
if(Msg.message == WM_MENSAJE_PUERTO_SERIE){
//Tratamos el mensaje que ha llegado por el puerto serie
}
}
void __fastcall TForm1::ScrollBar1Change(TObject *Sender)
{
//Actualizo unos valores, por ejemplo...
int variable = ScrollBar1->Position;
}
//*****************************************************
Mientras no toque en la ScrollBar no hay problema, pero cuando estoy utilizando el ratón sobre ella para desplazarla, no atiendo a tiempo los mensajes que me llegan por el puerto serie, supongo que porque se están ejecutando las instrucciones del evento OnChange de la ScrollBar. Creo que la solución podría ser utilizar un hilo (hebra/thread) que estuviese pendiente del evento OnMessage (corregidme si me equivoco). ¿Sabeis cómo se podría hacer esto?
Un saludo y muchas gracias por vuestro tiempo y respuestas
Última edición por gesgg fecha: 28-01-2012 a las 04:23:36.
|