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+ avec C & C++ Discussion :

Statusbar affichant plusieurs lignes.


Sujet :

GTK+ avec C & C++

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 17
    Par défaut Statusbar affichant plusieurs lignes.
    Je souhaite mettre en place une statusbar composée d'un nombre variable de lignes, disons entre 1 et 10, typiquement.
    L'utilisateur fixerais celui-ci par un moyen quelconque, mais paramètrable. Le but est donc que l'utilisateur puisse voir une pile composée des derniers messages et non pas uniquement du dernier.

    Quelle solution ?
    Créer un objet qui intègre n statusbar, gère une pile de message en les repartissant sur les différentes statusbar. Ça reste simple mais je trouve dommage que statusbar ne gère pas ça d'emblée.
    Des idées ? Merci d'avance.

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

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

    Informations forums :
    Inscription : Février 2008
    Messages : 2 308
    Billets dans le blog
    5
    Par défaut
    Les GtkStatusBar peuvent mémorisés une liste de message.
    Any messages added to a statusbar's stack must specify a context id that is used to uniquely identify the source of a message. This context id can be generated by gtk_statusbar_get_context_id(), given a message and the statusbar that it will be added to. Note that messages are stored in a stack, and when choosing which message to display, the stack structure is adhered to, regardless of the context identifier of a message.

    One could say that a statusbar maintains one stack of messages for display purposes, but allows multiple message producers to maintain sub-stacks of the messages they produced (via context ids).
    Tu y accèdes via les context_id. Tu pourrais par exemple placer un GtkSpinButton à côté pour que l'utilisateur puisse choisir le message.

    Si maintenant tu préfères voir tous les messages alors il te faudra passer par un autre mécanisme. Je pense qu'un GtkComboBox serait plus approprié.

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

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

    Informations forums :
    Inscription : Février 2008
    Messages : 2 308
    Billets dans le blog
    5
    Par défaut
    Une autre idée me vient. Tu utilises un GtkStatusBar avec une infobulle. Lorsque la souris stationne sur le statusbar tu affiches dans l'infobulle tous les messages mémorisés.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 17
    Par défaut
    Merci pour votre réponse.

    Une précison sur ce que je veux faire (je m'inspire de ce qui existe sur des logiciels professionnels de CA0, très bien faits).

    L'utilisateur effectue une opération délicate et je veux un retour immédiat du logiciel par le biais de messages pour que l'utilisateur voit le contexte global et le "déroulé" des opérations. Mais... pour différentes raisons je ne voudrais pas de manipulation à la souris (donc pas de combobox, d'infobulle). Je ne veux pas non plus de boîte de dialogue. Ce que je recherche n'existe pas "out of the box", semble t-il.

    Je pense faire ceci, empiler plusieurs statusbar les unes au dessus des autres et faire un gestionnaire qui gère la pile de messages arrivant. Le tout dans un seul objet qui encapsule l'ensemble.

    C'est dommage que ça n'exite pas en standard, je demandais confirmation.

  5. #5
    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
    Par défaut
    Citation Envoyé par bourba Voir le message
    C'est dommage que ça n'exite pas en standard, je demandais confirmation.
    En même temps si on commençait à ajouter dans le toolkit toutes les utilisations non-standard pour satisfaire tous les utilisateurs, ça deviendrait vite le bordel...

  6. #6
    Membre confirmé Avatar de Gamall
    Profil pro
    Étudiant ENSEA
    Inscrit en
    Août 2009
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant ENSEA

    Informations forums :
    Inscription : Août 2009
    Messages : 252
    Par défaut
    Sinon, si tu t'es courageux, et que tu connais bien Gtk+, tu peux faire toi même le widget

    L'avantage, c'est que t'as une application très évolutive et chaque widget s'intègre très bien dans son contexte.
    En plus, le code est beaucoup plus facile à maintenir

  7. #7
    Membre Expert
    Homme Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 259
    Par défaut
    Y a aussi http://library.gnome.org/devel/gtk/u...tkInfoBar.html qui peut peut être t'aider à faire ce que tu veux. Ubuntu et Banshee ont chacun un truc sympa pour les notifications aussi...

Discussions similaires

  1. Afficher plusieurs lignes dans une TextBox
    Par Spikuria dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 17/06/2009, 09h01
  2. Afficher plusieurs lignes de texte dans un label
    Par dahmane2007 dans le forum VB.NET
    Réponses: 2
    Dernier message: 21/10/2008, 02h28
  3. Réponses: 6
    Dernier message: 12/06/2007, 17h07
  4. Réponses: 1
    Dernier message: 04/12/2006, 16h20
  5. [C#] Un composant pour afficher plusieurs lignes ?
    Par Tips dans le forum Windows Forms
    Réponses: 3
    Dernier message: 26/12/2005, 19h47

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