Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Principal > Varios
Register FAQ Members List Calendar Guía de estilo Today's Posts

Coloboración Paypal con ClubDelphi

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 16/06/2005
zugazua2001 zugazua2001 is offline
Miembro
 
Join Date: Oct 2004
Location: Necochea
Posts: 237
Poder: 22
zugazua2001 Va por buen camino
Evitar los timers

Hola en mi aplicacion presento varias fotos que se van cambiando mediante unos timers.
La aplicacion se me pone muy lenta, esto lo observo cuando abro los menues y me muevo por las distintas opciones.
Queria saber como puedo hacer para evitar que se ponga lenta la aplicacion.
Gracias por todo y saludos.
Reply With Quote
  #2  
Old 16/06/2005
Lepe's Avatar
[Lepe] Lepe is offline
Miembro Premium
 
Join Date: May 2003
Posts: 7,424
Poder: 31
Lepe Va por buen camino
Si el intervalo del timer es muy pequeño (milisegundos) puede que esté agobiando al resto del programa, en ese caso, en el evento OnTimer, añade un Application.ProcessMessages.

Espero te ayude.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Reply With Quote
  #3  
Old 16/06/2005
zugazua2001 zugazua2001 is offline
Miembro
 
Join Date: Oct 2004
Location: Necochea
Posts: 237
Poder: 22
zugazua2001 Va por buen camino
Gracias, no encontre diferencia

Hola probe lo que me dijistes y no encontre diferencia.
Muchas gracias;
Reply With Quote
  #4  
Old 16/06/2005
Casimiro Noteví's Avatar
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Join Date: Sep 2004
Location: En algún lugar.
Posts: 32,681
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Prueba a cambiar los timers, el que trae delphi no es muy efectivo, te aconsejo que pruebes el que trae las RX
Es un timer "multihilo" que no consume recursos apenas y es muchísimo más exacto que el de delphi.
Reply With Quote
  #5  
Old 16/06/2005
Mick Mick is offline
Miembro
 
Join Date: May 2003
Posts: 405
Poder: 24
Mick Va por buen camino
Lo mas probable es que el codigo que se ejecuta dentro de esos timers necesita mucha CPU o mucho movimiento de datos/imagenes desde la memoria ram o disco hacia la memoria de la tarjeta grafica.
Como se comenta poniendo el timer en un Thread podria hacer que mejore la respuesta del programa, a costa eso si de que el proceso que muestra las fotos se ralentice ya que el microprocesador es uno solo , y solo puede hacer una cosa a la vez.
Otro problema es que si efectivamente ese proceso lo que hace principalmente es dibujar imagenes en la pantalla, un thread aparte no tendria porque resolver el problema debido a que dentro de una misma aplicacion solo un proceso a la vez (normalmente el principal con el uso de synchronize) puede dibujar en la pantalla, de modo que si el codigo del timer esta dibujando esas imagenes, los menus, butones etc, y otros elementos graficos del programa no pueden refrescarse o redibujarse hasta que el proceso del timer acabe de dibujar.
En definitiva yo haria las dos siguiente cosas:
-Comprobar la velocidad del timer , puede estar demasiado rapido.
-Comprobar el consumo de cpu del proceso de dibujado, que es donde seguramente estara el problema, en este caso solo se pueden hacer dos cosas, o poner una cpu mas rapida u optimizar ese codigo para que haga el mismo trabajo en menos tiempo (usando menos cpu).

Saludos
Reply With Quote
  #6  
Old 17/06/2005
Lepe's Avatar
[Lepe] Lepe is offline
Miembro Premium
 
Join Date: May 2003
Posts: 7,424
Poder: 31
Lepe Va por buen camino
Acabo de recordar un detalle, creo que importante, Un menú tapará la imagen de fondo cuando lo despliegas y al moverte por los menus, hace que se redibuje la imagen de fondo con lo cual, el timer y el propio menú está duplicando las veces que se redibuje la imagen de fondo.

En este contexto, quitaría la imagen de fondo

Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT +2. The time now is 05:46.


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
Copyright 1996-2007 Club Delphi