![]() |
rutina OUT32 se ejecuta siempre primero
Hola ... soy muy nuevo en esto del Delphi asi que tenganme paciencia...
probando manejar el puerto Paralelo arme unas rutinas para sacar algunos datos por LPT1 (peep3) y a su vez me grafique algunas cosas en pantalla (LuzRojaOn). pero ponga donde ponga le rutina PEEP3 , siempre la ejecuta antes que la rutina del grafico en pantalla y queda feo... como fuera de sincronismo...
Puede ser que Delphi7 le asigne una prioridad mas alta o algo asi ??? no se como explicarme mejor... muchas gracias.... |
agrego...
por ejemplo el la funcion LuzRojaOn se ejecuta la sentencia OUT32 antes que todos los cambios de colores....... |
Supongo que deberás poner algo para que refresque la parte gráfica antes de ejecutar Out32:
Para ahorrar tiempo en procesos que "no son los importantes" Delphi los deja para "después". En este caso es el redibujado del formulario. Para forzar esto, se suele utilizar Application.ProcessMessages, que ejecuta todos los mensajes pendientes antes de seguir con la ejecución del programa (redibijado, eventos de teclado, eventos de raton, etc.). Si no quieres que el programa procese todos los eventos (puede ser lento si estás dentro de un bucle grande) puedes tratar de enviar la instruccion Repaint o Refresh. o
PD. Cuando escribas código ponlo entre tags [ delphi] ... [/ delphi] |
Solucionado con el "Application.ProcessMessages;"
Muchas Graciassss !!! |
| La franja horaria es GMT +2. Ahora son las 06:24:37. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi