Kivy - Agendamento de execução com Clock
Nesse vídeo vamos aprender como agendar a execução de códigos. Vamos utilizar esse conhecimento para simular um atraso nas mensagens do chatbot, para que ele pareça mais real.
Existem diversas razões para agendarmos a execução de código no Kivy. Hoje vamos abordar uma delas que é evitar o travamento do 'Kivy main loop', ou o ciclo do Kivy.
Suponha que desejamos modificar alguma propriedade de um 'widget' alguns segundos depois da ação do usuário. Como fariamos isso?
Muitas pessoas ficariam tentadas a usar a função sleep do módulo time do Python. Mas isso causaria o travamento da interface.
Para evitar isso, podemos fazer de uma forma alternativa, que é utilizando o módulo 'Clock' do Kivy. Para isso, precisamos importar o módulo.
from kivy.clock import Clock
Para agendar a execução de alguma função ou método, podemos utilizar o método 'schedule_once' dessa maneira:
# a função 'funcao' será chamada em 'tempo' segundos
Clock.schedule_once(funcao,tempo)
No vídeo eu utilizo essa técnica para simular um atraso na resposta do nosso assistente virtual, para que ele pareça mais real. Confira :)
Faça o download dos arquivos desta aula aqui.