Ver Mensaje Individual
  #11  
Antiguo 26-04-2022
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.285
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por rrf Ver Mensaje
Todo funciona normalmente aunque, cuando la ventana de otro programa (por ejemplo, el explorador de windows) tapa parte del panel con la imagen, esa parte dibujada ya no aparece cuando se vuelve a seleccionar mi programa.

Lo que quisiera saber es:
1- Si es posible hacer que el dibujo sobre el canvas del panel sea permanente. y ¿cómo se hace?
2- Y también quisiera saber, cuando se tienen ejecutándos varios programas y se pasa de usar un programa a usar otro, si hay algún evento que indique que el programa ha quedado activo en ese momento.
Como he dicho hay varios eventos que te pueden indicar cuando "redibujar". Esto es para Delphi, pero diría que a este nivel debe funcionar igual el lazarus.
Tanto el Formulario (TForm) como TApplication tienen el evento OnActivate.
Y por supuesto el OnPaint, aunque este "salta" muchas más veces de las que necesitas (cada vez que mueves el ratón, por ejemplo).

En concreto para lo que comentas, al activar tu aplicación y la ventana puedes usar el Application.OnActivate, que salta cada vez que tu aplicación pasa a ser la activa.

__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita