Comment faire pour appeler une fonction, après toutes les 15 secondes à l'aide de QT
Je sais que ma question est similaire à ce QUESTION mais je ne peux pas trouver de solution à partir de là. Quelqu'un peut-il donner un obtenir de brèves réponse à mon problème?
J'ai une fonction comme ceci
void myWidget::showGPS()
{
/* This function will read data from text file
that will continuouly change over time
then process its data */
}
Je veux appeler cette fonction à tous les 15 à 20 secondes sans l'aide de Quick-and-dirty méthode de paramètre booléen à true .
Est-il possible de mettre en œuvre cette aide
QT de signaux et de slots avec minuterie ou quelque chose comme ça
Vous pouvez toujours utiliser QTimer? il suffit de régler votre intervalle de temps de 15 secondes? et le lien de votre fonction avec la minuterie par "connect"? (semblable au lien que vous avez trouvé.
Des exemples sont sur docs pour QTimer
Des exemples sont sur docs pour QTimer
OriginalL'auteur Bavani | 2013-10-10
Vous devez vous connecter pour publier un commentaire.
La méthode
showGPS()
, doit être faite dans une fente deMyWidget
classe.Alors, c'est juste une question de
QTimer
classe.Le code ci-dessus va appeler showGPS(), toutes les 15 secondes.
Depuis l'appel est périodique, vous n'avez pas à régler la minuterie dans un mode de prise de vue à l'aide de la
setSingleShot()
méthode.Edit:
C'est un simple poc, pour vous aider à comprendre..
OriginalL'auteur Barath Ravikumar
Alors que vous pouvez utiliser QTimer pour vérifier les modifications du fichier, dans votre cas QFileWatcher pourrait être une meilleure solution.
Selon le taux de mises à jour du fichier, vous pourriez à la limite du taux de la mise à jour. Qui à son tour serait probablement encore impliquer un
QTimer
.OriginalL'auteur dima_weber