Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Actualizar Caption de un elemento de Array of TLabel's (https://www.clubdelphi.com/foros/showthread.php?t=44832)

gluglu 15-06-2007 17:26:05

Actualizar Caption de un elemento de Array of TLabel's
 
Hola compañeros !

Tengo definido un Array de TLabels en mi formulario principal.

Código SQL [-]
public
  Arr_DesktopL : Array of TLabel;

Cuando intento actualizar el título de los labels contenidos en dicho Array, me lo hace bien, pero no me lo cambia en la 'presentación' del formulario principal hasta que no fuerzo un repintado tal como pasando otra ventana por encima de dicho Label, o cambiando a otra aplicación de Windows y volviendo a la mía.

Código Delphi [-]
procedure TMainForm.Icons_On_DeskTop_Update(i: Integer; AuxS1: String);
begin
  Arr_DesktopL[i].Caption := AuxS1;
end;

Como puedo 'forzar' el repintado del Label para que se actualize ?

He probado con Arr_DesktopL[i].Repaint;, con Arr_DesktopL[i].Refresh;, Arr_DesktopL[i].Update; e incluso con MainForm.Repaint; pero nada. En ningún caso me actualiza el caption.

Lo dicho, si por el contrario después de la instrucción de arriba, muevo otra ventana por encima o abro otra aplicación diferente en Windows y vuelvo a la mía, aparece ya de nuevo el Label con el Caption correcto.

ClNaU2 ;)

jhonny 15-06-2007 17:47:27

Y si pruebas con alguna de las siguientes 2 instrucciones?
Código Delphi [-]
MainForm.Refresh;
o
Código Delphi [-]
Application.ProcessMessages;
Espero te sirva.

gluglu 15-06-2007 18:24:16

Gracias Jhonny. No ha funcionado.

Lo he arreglado de la siguiente manera :

Código Delphi [-]
procedure TMainForm.Icons_On_DeskTop_Update(i: Integer; AuxS1: String);
begin
  Arr_DesktopL[i].Caption := AuxS1;
  Arr_DesktopL[i].Visible := False;
  Arr_DesktopL[i].Visible := True;
end;


La franja horaria es GMT +2. Ahora son las 00:36:33.

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