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 :

Probleme avec une case à cocher


Sujet :

GTK+ avec C & C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 4
    Par défaut Probleme avec une case à cocher
    Bonjour,

    je cherche à créer une case à cocher suivie d'un label. j'ai réussi, cependant je n'arrive pas à changer le label de la case une fois cochée, ce qui me permettrait de savoir si le programme prend bien en compte que la case a été cochée.

    je pense qu'une fois cochée la case émet un signal " clicked" mais je n'arrive pas à l'exploiter, j'ai également essayé avec " toggled" mais sans succès.

    j'aimerais trouver le moyen de detecter si la case a été coché pour ensuite supprimer l'element coché d'un fichier annexe.

    j'espère avoir été assez claire.
    merci d'avance.

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Salut, bienvenue sur les forums de developpez.com


    Un GtkCheckButton dérivant directement d'un GtkToggleButton, tu peux sans problème utiliser la fonction gtk_toggle_button_get_active qui te permet de connaître l'état de la case à savoir, cocher ou non !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 74
    Par défaut
    Citation Envoyé par Franck.H
    Un GtkCheckButton dérivant directement d'un GtkToggleButton, tu peux sans gtk_toggle_button_get_active qui te permet de connaître l'état de la case à savoir, cocher ou non !
    J'ai fait cette implémentation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    void 
    on_check_button_toggled (GtkWidget *widget, gpointer user_data)
    {
        my_struct *pt = (my_struct *)user_data;
        gboolean etat = gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(pt->checkbutton_am_deb) );
     
        if(etat)
        gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(pt->checkbutton_pm_deb), FALSE);                
    }
    avec le signal :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    pt->checkbutton_am_fin = gtk_check_button_new_with_mnemonic (_("AM"));
    pt->checkbutton_pm_fin = gtk_check_button_new_with_mnemonic (_("PM"));
     
    g_signal_connect (G_OBJECT(pt->checkbutton_am_deb), "toggled",
    		    G_CALLBACK (on_check_button_toggled), pt);
    Mais j'ai un beug...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
    assertion GTK_IS_TOGGLE_BUTTON (toggle_button) failled. 
    
    Ce que je veux c'est qu'en choisissant une heure, si l'utilisateur clique sur AM, que ça verrouille l'appui sur PM.

    Merci

  4. #4
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 4
    Par défaut
    Merci pour cette réponse si rapide.
    je m'étais servie de la fonction gtk_toggle_button_get_active mais je pense que c'est dans la syntaxe de mon signal qu'il y a un probleme :

    g_signal_connect(G_OBJECT(pCheckBtn[1]), "clicked", G_CALLBACK(OnEtatBtn), NULL);

    avec pCheckBtn[1] la case à cocher et OnEtatBtn une fonction issue du tutoriel de GTK qui me permet de modifier l'état de la case à cocher mais je ne sais pas s'il faut que le dernier parametre soit " NULL" ou autre chose.

  5. #5
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Je pense que le plus logique serait que le dernier argument soit justement le pointeur du widget que tu veux "décocher" !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  6. #6
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 4
    Par défaut
    je suis vraiment désolée avec mes questions qui doivent vous paraître stupides mais comment je fais pour faire pointer le pointeur sur le widget? normalement je dois stocker l'adresse du widget dans le pointeur mais j'ai essayé pToggle=&pCheckBtn[1]; et pToggle=pCheckBtn[1]; et aucun des deux ne marche...

Discussions similaires

  1. Affichage dossier avec une case à cocher
    Par corwin44 dans le forum Windows Vista
    Réponses: 5
    Dernier message: 22/01/2009, 14h34
  2. Supprimer les éléments sélectionnés avec une case à cocher
    Par keishah dans le forum PHP & Base de données
    Réponses: 19
    Dernier message: 16/08/2007, 15h38
  3. liste déroulante avec une case à cocher et une image
    Par kurul1 dans le forum C++Builder
    Réponses: 4
    Dernier message: 08/03/2007, 09h54
  4. Etat avec une case à cocher sur une requête difficile
    Par marcoO dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 10/01/2007, 14h21
  5. Affichage de nouveau champ de formulaire avec une case à cocher
    Par breizhgen dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/09/2006, 21h46

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