![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
![]() Hola Hermanos.
Estoy aprendiendo a programar hilos, hice un ejemplo muy simple de un programa que cada segundo que pasa le cambia el titulo a una venta a 1 y luego 2 y luego 3 y asi sucesivamente, el objetivo es que dicha acción la haga por medio de un hilo de ejecución, y la forma de saber si lo esta haciendo así es que durante el proceso podamos arrastrar nuestra aventana con el mouse o apretarle a otro boton y que haga algo simple como cambiar el color de la ventana etc, ustedes saben. El problema es que al ejecutar el hilo...si funciona, pero no me libera la ventana, pareciera que no se estuviera ejecutando realmente en un hilo. Quiero ver si alguien de alma caritativa me pudiera decir que estoy haciendo mal. Enseguida tratare de explicar el código simple que uso: Aqui, simplemente declaro un nuevo objeto de clase TThread: Código:
type CambiaTituloEnHilo= class(TThread) private Procedure Actualiza_Ttitulo_Ventana; { Private declarations } protected procedure Execute; override; end; Código:
procedure CambiaTituloEnHilo.Execute; begin Synchronize(Actualiza_Ttitulo_Ventana) end; Código:
Procedure CambiaTituloEnHilo.Actualiza_texto; var inicio:integer; begin inicio:=1; for inicio:=1 to 400 do begin form1.Caption:=inttostr(inicio); sleep(1000); //Espera un segundo end end; CambiaTituloEnHilo, esto puede ser al apretar un boton y cuando eso pase pues el constructor execute se mandara llamar: Código:
MiHilo:=CambiaTituloEnHilo.Create(false); Osea si funciona..si cambia el titulo de la ventana pero me inhibe la ventana. Pues que estoy haciendo mal? Gracias.
__________________
"Los unicos que no se equivocan son aquellos que no intentan hacer algo." Iván Caballero Cano... ivanhalen77@gmail.com |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
¿Como paso el alias a un programa que corre en un PC sin delphi ? | Parsec | Conexión con bases de datos | 4 | 06-06-2008 01:12:24 |
Como usar dbExpress en hilos ? | rolandoj | Conexión con bases de datos | 7 | 05-03-2008 21:12:32 |
cuando llamo ejecutar un hilo dentro del proceso del hilo no lo hace | robertosc | Varios | 1 | 14-08-2007 22:11:09 |
Como grabar mientras la aplicacion corre? | principiante22 | Varios | 3 | 01-07-2007 19:12:01 |
Como detectar el S.Operativo donde corre Firebird | pcicom | Conexión con bases de datos | 2 | 23-06-2005 23:16:30 |
![]() |
|