Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Gráficos (https://www.clubdelphi.com/foros/forumdisplay.php?f=8)
-   -   Evitar Parpadeo de Imagen (https://www.clubdelphi.com/foros/showthread.php?t=28723)

Deiv 29-12-2005 23:34:01

Evitar Parpadeo de Imagen
 
Hola,
Como evitar el parpadeo en el siguiente código, mientras tengo el mouse sobre el botón:
(El timer está con un interval = 50, he probado distintos y aún así me muestra el parpadeo en Delphi 7)

Código Delphi [-]
type
  TForm1 = class(TForm)
    Button1: TButton;
    Image1: TImage;
    Timer1: TTimer;
    procedure Button1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
    procedure Timer1Timer(Sender: TObject);
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
  Timer1.Enabled:=true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Image1.Left:=Image1.Left+4;
  if Image1.Left+Image1.width >= Form1.width then
    Timer1.Enabled:=false;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
begin
  Timer1.Enabled:=false;
end;

end.

Casimiro Notevi 30-12-2005 08:34:00

A mí me parpadean los ojos al ver ese código, por favor ;) http://www.clubdelphi.com/foros/showthread.php?t=10005

dec 30-12-2005 10:19:07

Hola,


Cita:

Empezado por Casimiro
A mí me parpadean los ojos al ver ese código (...)

El caso es que Deiv no las puso: edité yo el mensaje, pero, las etiquetas, que hay que seguir utilizando, no funcionan actualmente, debido a los cambios que están produciéndose en los Foros. Se espera que pronto estén de nuevo disponibles, de ahí el que sea bien utilizarlas, aunque el código no aparezca como hasta ahora, perfectamente formateado. ;)

Casimiro Notevi 30-12-2005 10:22:01

vaya :o

por cierto, ya funcionan con firefox los iconos, links, tipos de letras, etc :p

Deiv 30-12-2005 14:36:42

Bueno, existe solución a mi problema?
En cierta ocasión el Foro me pidió, ¿porque no envías tu código? ¿porque no envías tu avance?
Hoy que envío, resulta que "¿les parpadea los ojos??" sin sugerencias?
Esperare como Novato a vuestras experiencias en Delphi por favor.
Un saludo

Athanatos 30-12-2005 17:05:45

Cita:

Empezado por Deiv
Hola,
Como evitar el parpadeo en el siguiente código, mientras tengo el mouse sobre el botón:
(El timer está con un interval = 50, he probado distintos y aún así me muestra el parpadeo en Delphi 7)

Bueno, tienes que olvidarte del TImage y Utilizar un Tbitmap para guardar la imagen en memoria y luego en el evento onPaint de tu formulario pintar el Tbitmap en el Tcanvas de tu formulario, preferiblemente usando un bitBlt. O tambien puedes pintar en un Tpaintbox.

En caso extremo puedes quitar las opciones de transparencias a tu formulario con agregando al "control style" [csOpaque].

Casimiro Notevi 30-12-2005 22:32:29

Cita:

Empezado por Deiv
Bueno, existe solución a mi problema?
En cierta ocasión el Foro me pidió, ¿porque no envías tu código? ¿porque no envías tu avance?
Hoy que envío, resulta que "¿les parpadea los ojos??" sin sugerencias?
Esperare como Novato a vuestras experiencias en Delphi por favor.
Un saludo

No te molestes ;) y feliz año nuevo :)


La franja horaria es GMT +2. Ahora son las 23:32:32.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi