IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ Discussion :

Heure et gtk


Sujet :

GTK+

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 7
    Points : 7
    Points
    7
    Par défaut Heure et gtk
    Bonjour,
    Je souhaiterai savoir s'il existe dans gtk la gestion du temps, qui pourrait permettre d'afficher une horloge dans l'interface graphique d'un programme ?

  2. #2
    Rédacteur

    Avatar de gege2061
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2004
    Messages
    5 840
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2004
    Messages : 5 840
    Points : 11 625
    Points
    11 625
    Par défaut
    Bonjour,

    apparement non mais le C dispose de tout ce qu'il faut pour faire ça :
    Writing a Widget Using Cairo and GTK+2.8
    Writing a Widget Using Cairo and GTK+2.8, Part 2


  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Merci de ta réponse je vais donc plutôt m'orienter dans cette voie.

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2014
    Messages : 72
    Points : 54
    Points
    54
    Par défaut affichage de l'heure en gtk
    bonjour

    j'ai exactement le même problème

    depuis le temps j'essaye de trouver une méthode pour afficher l'heure système en temps réel sur un label en gtk mais rien

    j'ai trouvé un truque avec g_timeout_add, mais comme je fais quelques tests avant de rafraîchir le label alors je perds à chaque fois quelques milisecondes mais au cumul, au bout de 3 heure je me retrouve avec 15 minutes de retard par rapport à la vraie heure système

    j'ai essayé vos lien ci-dessus mais ils ne fonctionnent pas

    alors, s'il vous plaît, pourriez-vous m'aider à m'en sortir ?

    merci d'avance

  5. #5
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Bonjour.

    Utiliser g_timeout_add(); pour rafraîchir un widget est la bonne méthode. Par contre, il ne faut pas l'utiliser comme un timer précis. Effectivement la fonction insérée par g_timeout_add(); fait partie de la boucle principale Gtk+. Si l'IHM est lourde la période d'éxécution est variable.

    Ce que je ferais, ce serait dans la fonction insérée de récupérer le temps réel pour l'afficher. Cela peut au fil du temps faire un peu "sauter" la pendule (les secondes peuvent faire des sauts) mais au final l'heure affichée est toujours la bonne.

    Une autre méthode est de créer un thread indépendant mais là c'est entrer dans les problèmes de gestion de l'IHM.

    Mais rien n'est impossible...

  6. #6
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Points : 2 002
    Points
    2 002
    Par défaut
    Effectivement g_timeout_add permet de réveiller l'interface graphique au moment où elle doit mettre à jour l'heure. Mais il faut redemander au système à chaque fois l'heure réelle, car g_timeout_add ne garantit pas le temps écoulé. Si on rafraichit l'interface toutes les n secondes avec n ≥ 1, alors utiliser g_timeout_add_seconds pour économiser l'énergie. Pour mesurer le temps écoulé (pour un chronomètre par exemple) la GLib fournit GTimer. Pour obtenir l'heure complète, elle fournit GDateTime (depuis GLib 2.26).
    Documentation officielle GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels par l'exemple (platform-demos):
    GTK (tous langages)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [GTK+ 3][C] Saisie l'heure dans un Gtkentry
    Par lenas_tshaleb dans le forum GTK+ avec C & C++
    Réponses: 0
    Dernier message: 22/06/2014, 02h31
  2. [CR ?] Somme d'heure sous Crystal ?
    Par Peter PARKER dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 17/04/2003, 16h24
  3. [VBA-E] [Excel] Lancer une macro à une heure donnée
    Par Lysis dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/10/2002, 12h15
  4. [VB6] [Datareport] Heure d'impression ds pied de page
    Par oazar dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 03/10/2002, 10h11
  5. Réponses: 11
    Dernier message: 23/07/2002, 14h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo