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 :

Desactivation d'un element d'une toolbar


Sujet :

GTK+

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 8
    Par défaut Desactivation d'un element d'une toolbar
    bonjour, j'ai défini une toolbar avec le code suivant:
    pToolbar = gtk_toolbar_new();
    gtk_box_pack_start(GTK_BOX(pVBox[0]), pToolbar, FALSE, FALSE, 0);
    gtk_toolbar_insert_stock(GTK_TOOLBAR(pToolbar),GTK_STOCK_EXECUTE,"Run",NULL,NULL,NULL,-1);
    gtk_toolbar_insert_stock(GTK_TOOLBAR(pToolbar),GTK_STOCK_STOP,"Stop",NULL,NULL,NULL,-1);

    Et je voudrais pouvoir activer et desactiver un element de cet toolbar mais je n'ai pas réussi.

    Si quelq'un sait comment je peux faire ou bien si y d'autres façon de creer une toolbar pour que ça soit plus simple d'utilisation je suis preneur

  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 : 54
    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
    Salut.

    Tout d'abord cette fonction est obsolète. A éviter donc dans ta programmation.

    Ceci étant dit, pour répondre à ta première question il te faut récupérer l'élément désiré avant de le rendre insensible. Pour ca tu as la fonction suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    GtkToolItem*        gtk_toolbar_get_nth_item            (GtkToolbar *toolbar,
                                                             gint n);
     
    Returns the nth item on toolbar, or NULL if the toolbar does not contain an n'th item.
     
    toolbar :
    	a GtkToolbar
     
    n :
    	A position on the toolbar
     
    Returns :
    	The nth GtkToolItem on toolbar, or NULL if there isn't an n'th item.
     
    Since 2.4
    Tu peux voir qu'avec cette fonction tu récupères un GtkToolItem. Si tu regardes la documentation officielle tu verras que ce widget hérite des GtkWidget:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    +----GtkWidget
        +----GtkContainer
              +----GtkBin
                    +----GtkToolItem
    Tu pourras donc utiliser la fonction suivante pour désactiver ton item:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    void                gtk_widget_set_sensitive            (GtkWidget *widget,
                                                             gboolean sensitive);
     
    Sets the sensitivity of a widget. A widget is sensitive if the user can interact with it. Insensitive widgets are "grayed out" and the user can't interact with them. Insensitive widgets are known as "inactive", "disabled", or "ghosted" in some other toolkits.
     
    widget :
    	a GtkWidget
     
    sensitive :
    	TRUE to make the widget sensitive

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 8
    Par défaut
    oki merci j'avais déjà essayer ça mais ça ne marcher pas. Peut être que c'est la façon dont j'ai créer ma Toolbar qui gene...

    Comment on crée une toolbar alors?

  4. #4
    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 : 54
    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
    Je te mets en copie un extrait de code d'un de mes programmes. Ca devrait te donner une idée générale sur la manière de procéder. Ce code inclus les tooltips :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    // Création barre outils
    	toolbar=gtk_toolbar_new();
           tooltips = gtk_tooltips_new ();
    	gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS);
    	gtk_toolbar_set_icon_size(GTK_TOOLBAR(toolbar), GTK_ICON_SIZE_LARGE_TOOLBAR);
     
    	// Bouton Quitter
    	bouton = gtk_tool_button_new_from_stock(GTK_STOCK_QUIT);
    	gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (bouton), tooltips, "Quitter", NULL);
    	g_signal_connect(G_OBJECT(bouton), "clicked", (GCallback)CallBack_Quit, NULL);
    	gtk_toolbar_insert(GTK_TOOLBAR(toolbar), bouton, 0);
     
    	// Bouton enregistrer une partie
    	bouton = gtk_tool_button_new_from_stock(GTK_STOCK_SAVE);
    	gtk_tool_item_set_tooltip (GTK_TOOL_ITEM (bouton), tooltips, "Sauvegarde la partie en cours", NULL);
    	gtk_widget_set_sensitive (GTK_WIDGET(bouton), FALSE);

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 8
    Par défaut
    merci

Discussions similaires

  1. [langage] Supprimer un élément dans une liste
    Par myjuna dans le forum Langage
    Réponses: 15
    Dernier message: 06/08/2014, 11h49
  2. [VB.NET] ListBox lié un element a une clé
    Par hirochirak dans le forum Windows Forms
    Réponses: 8
    Dernier message: 03/05/2004, 11h17
  3. Redimensionner une ToolBar
    Par tscoops dans le forum C++Builder
    Réponses: 2
    Dernier message: 12/11/2003, 16h46
  4. Réponses: 12
    Dernier message: 26/02/2003, 08h14
  5. [VB6] Modifier la clé d'un élément d'une collection
    Par Ricou13 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 21/11/2002, 14h49

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