GARANTIR DESCONTO

Fórum Duvida com o Application.ProcessMessages #255162

20/10/2004

0

Olá pessoal, minha dúvida é a seguinte:
Quando em uma rotina ela é grande estou usando o Application.ProcessMessages; pra ´liberar´ e deixa o programa mais rápido.Minha questao é: [b:eaa188b681]Existe algum problema em eu usar muitos Application.ProcessMessages; em uma função e em um Form?[/b:eaa188b681]

Desde ja agradeco.


Titanius

Titanius

Responder

Posts

20/10/2004

Emerson Nascimento

pelo que eu sei não há problema. esse método só é executado se há alguma ´mensagem´ do windows a ser processada. por exemplo, suponha que seu formulário esteja rodando uma rotina demorada e o seu programa seja ´sobreposto´ por um outro programa. quando você retorna ao seu programa, é enviada uma mensagem para que o seu formulário seja ´redesenhado´. se você ainda estiver dentro daquela rotina demorada, o form não será redesenhado, a menos que você faça uma chamada ao ProcessMessages, que informa ao sistema para processar a mensagem de ´redesenhar´ o form.

o caso de ´redesenhar´ é apenas um exemplo. você pode querer colocar um botão ´Cancelar´ no seu formulário, para que uma determinada rotina seja cancelada a qualquer momento pelo usuário. para isso você precisa do ProcessMessages em cada iteração do seu laço/rotina, para que seja processada a mensagem informando que o botão foi clicado, para qe você execute as ações necessárias.

se não houver mensagens pendentes, o ProcessMessages não faz nada. eu nunca percebi perda de desempenho com várias chamadas ao ProcessMessages e até recomendo seu uso.


Responder

Gostei + 0

20/10/2004

Titanius

valeu manow :D


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar