Fórum Thread #176787
22/08/2003
0
estou aprendendo a trabalhar com threads no delphi porém tenho um problema!!! Criei uma thread que faz com que barras de progresso incrementem!! É criado uma thread para cada barra e é executado normalmente!!! Elas vão progredindo paralelamente. Até ai tudo ok!!!
O problema acontece que enquanto elas estão carregando gostaria que a minha aplicação continuasse funcionando normalmente. Exemplo: Gostaria de minimizar a aplicação ou clicar em um botão e mostrar uma menssagem!!!
O código da thread é o seguinte
unit TrdBarra; interface uses Classes, ComCtrls; type TMeuThread = class(TThread) private BarraProgresso: TProgressBar; protected procedure Execute; override; procedure Incrementa; public constructor Criar(Barra: TProgressBar); end; implementation constructor TMeuThread.Criar(Barra: TProgressBar); begin Create(False); BarraProgresso := Barra; FreeOnTerminate := True; end; procedure TMeuThread.Execute; begin while BarraProgresso.Position < BarraProgresso.Max do Synchronize(Incrementa); end; procedure TMeuThread.Incrementa; begin BarraProgresso.StepBy(1); end; end.
agradeço a atenção,
Rafael
Biscoitorfa
Curtir tópico
+ 0Posts
22/08/2003
Nildo
No evento Criar, altere a propriedade priority:
Self.priority := (Olhe no Help pq nao lembro);
Gostei + 0
22/08/2003
Pgarcia
Qual prioridade vc está usando?
Gostei + 0
22/08/2003
Biscoitorfa
não estou utilizando nunhuma prioridade!!!
Gostei + 0
22/08/2003
Biscoitorfa
Self.Priority := tpNormal;
e continua a mesma coisa!!! Enquanto as barras estão crescendo a aplicação fica travada!!!!
Gostei + 0
22/08/2003
Nildo
Gostei + 0
22/08/2003
Cebikyn
Já vi isso em algum lugar... acho que foi num livro...
Gostei + 0
22/08/2003
Biscoitorfa
fiz uma coisa aqui que resolveu mais ou menos o problema!!! Criei apenas uma Thread e ai sim a aplicação funcionou legal!!! Acho que não posso criar mais de uma thread ao mesmo tempo!! Será que tem alguma coisa haver???
Gostei + 0
22/08/2003
Biscoitorfa
o programa continua travado!!!
Só funciona se criar uma Thread por vez!!!
Gostei + 0
22/08/2003
Nildo
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)