Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como ir cambiando el caption de un label mientras ejecuto una funcion? (https://www.clubdelphi.com/foros/showthread.php?t=24541)

gandalf_uy 24-08-2005 23:26:52

Como ir cambiando el caption de un label mientras ejecuto una funcion?
 
Buenas, primero y antes que nada gracias a todos los que hacen posible que este foro funcione.
Segundo decir que soy nuevo en esto del delphi por lo que se que mi pregunta es bastante chota o pelotuda.

Lo que quiero hacer es lo siguiente. Tengo una funcion que pertenece a un form, y dentro de este form tambien hay un label. Es una funcion que realiza y ejecuta varios sqlquery y lo que quiero es que a medida que se ejecuta y finaliza cada unos de estos queries, ir cambiando el caption del label.
ej.

procedure cualquierita;
begin
milabel.caption := 'estoy aca'
query.sql.text := 'select.... ... '
query.execsql
.
.
.
milabel.caption := 'ahora estoy aca'
query.sql.text := 'select.... ... '
query.execsql
.
.
.
milabel.caption := 'pero ahora estoy aca'
query.sql.text := 'select.... ... '
query.execsql

end

No logro hacer que me lo vaya cambiando sino que solamente me muestra el ultimo caption asignado en cuando delphi se pone a la espera de eventos.

Espero haber sido claro y me imagino que la respuesta (Eso espero) sea bastante simple.

Saludos y gracias.
gandalf_uy

Chente(rMan) 24-08-2005 23:35:39

Y si vuelves a pintar la forma?

Código Delphi [-]
query.execsql
.
.
.
milabel.caption := 'ahora estoy aca'
tuformat.Repaint;
query.sql.text := 'select.... ... '

o se me ocurre que en lugar de eso ocupes Application.processmessages algo asi.

Saludos.

chalys 25-08-2005 02:50:34

haber si te sirve
 
Hola no se si comprendí bien lo que quieres hacer, pero creo que quieres crear tus propios procedimientos para desde alli poder acceder a los diferentes objetos como label, edit, button y otros. Lo que yo hago es lo siguiente no se si se ha correcto pero a mi me funciona.



unit Unit1;

interface

uses

........

type

........

procedure Button1Click(Sender: TObject);

procedure cualquierita(Sender: Tobject); // debes declarar tu procedimiento aqui

.......
Imlementacion


procedure TForm1.cualquierita(Sender: Tobject);

begin

milabel.caption := 'estoy aca';

query.sql.text := 'select.... ... ';

query.execsql;

.

.

.

end;



procedure TForm1.Button1Click(Sender: TObject);

begin

cualquierita(Sender);

end;

Espero que te servia ..........

hermes_32 25-08-2005 12:57:15

Hola gandalf_uy,

cada vez que empiece una de tus querys haces:

Código Delphi [-]
  Application.ProcessMessages;
  label1.caption := el mensaje que quieras;
  label1.Update;

Un saludo.

gandalf_uy 25-08-2005 14:37:01

Muchas gracias por la información a todos los que me respondieron.

El Application.ProcessMessages; me anduvo notable

Gracias de nuevo,
gandalf_uy


La franja horaria es GMT +2. Ahora son las 21:40:25.

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