Bonsoir à tous,
sur internet on trouve pas mal d'infos mais souvent il s'agit juste de prototypes de fonctions. Auriez vous des liens qui montrent des vrais codes pour des cas concrets d'utilisation?
Je vous remercie.
Bonsoir à tous,
sur internet on trouve pas mal d'infos mais souvent il s'agit juste de prototypes de fonctions. Auriez vous des liens qui montrent des vrais codes pour des cas concrets d'utilisation?
Je vous remercie.
Hélas la documentation de l'API est la plus grosse source d'info à l'heure actuelle.Envoyé par ladygtk
Nous avons une rubrique toute neuve : http://gtk.developpez.com/ dont la FAQ devrait bientot être mise à jour avec 3 nouvelles questions sur les combo box :
- Comment effacer le contenu d'une combo box ?
- Comment récupérer le texte sélectionné ?
- Comment modifier le texte sélectionné ?
Merci gege2061.
C quoi l'API et donc pourquoi helas?
Et bien j'attends avec impatience cette mise à jour, car c exactement les questions que je me pose.
Mais j'ai surfé, et est-ce que vraiment avoir une liste est le seul moyen de récuper l'item sélectionné dans une combobox?
L'API ... bin c'est toutes les collections de fonctions relatives à GTK+ (GLib, GTK+, Pango, etc...) et hélas oui car la référence de l'API officielle est uniquement en Anglais mais est également pas toujours très explicit sur comment utiliser certains widget et manque aussi d'exemples.Envoyé par ladygtk
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 !
Suffit de demander, le code n'est pas forcement au point (surtout le dernier), mais ça peut tout de même t'aider :Envoyé par ladygtk
Comment effacer le contenu d'une combo box ?
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 void combo_box_clear (GtkComboBox *p_combo_box) { gint i; gint nb_entry = 0; GtkTreeModel *p_tree_model = NULL; g_return_if_fail (p_combo_box != NULL); p_tree_model = gtk_combo_box_get_model (p_combo_box); nb_entry = gtk_tree_model_iter_n_children (p_tree_model, NULL); for (i = 0; i < nb_entry; i++) { gtk_combo_box_remove_text (p_combo_box, 0); } }Comment récupérer le texte sélectionné ?
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
17
18
19
20
21
22
23
24
25 #if GTK_CHECK_VERSION (2, 6, 0) #define combo_box_active_get_text(combo_box) gtk_combo_box_get_active_text (combo_box) #else char *combo_box_active_get_text (GtkComboBox *combo_box) { gchar *s_text = NULL; gboolean b_ret = FALSE; GtkTreeIter iter; g_return_val_if_fail (combo_box != NULL, s_text); b_ret = gtk_combo_box_get_active_iter (combo_box, &iter); if (b_ret) { GtkTreeModel *p_model = NULL; p_model = gtk_combo_box_get_model (combo_box); if (p_model != NULL) { gtk_tree_model_get (p_model, &iter, 0, &s_text, -1); } } return s_text; } #endifComment modifier le texte sélectionné ?
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
17
18
19
20
21
22
23
24
25 void gtk_combo_box_set_active_text (GtkComboBox *p_combo_box, const gchar *text) { g_return_if_fail (p_combo_box); g_return_if_fail (text); { gint i; gint nb_entry = 0; GtkTreeModel *p_tree_model = NULL; p_tree_model = gtk_combo_box_get_model (p_combo_box); nb_entry = gtk_tree_model_iter_n_children (p_tree_model, NULL); for (i = 0; i < nb_entry; i++) { gtk_combo_box_set_active (p_combo_box, i); if (strcmp (gtk_combo_box_get_active_text (p_combo_box), text) == 0) { break; } } if (i == nb_entry) { gtk_combo_box_set_active (p_combo_box, 0); } } }
Salut,
c'est facile :
GtkTreeModel *model = gtk_combo_box_get_model ( my_combo_box );
gtk_list_store_clear ( GTK_LIST_STORE (model) );
Bon week-end. Fredy
Merci Fredy, oui le troisième je l'ai déjà étudié parce que je l'avais récupéré dans un autre item. En tout cas merci de ton aide précieuse.
Et est-ce que par hasard t'es calé sur gtk+ sur windows. J'arrive pas à le faire marcher sur mon PC. (J'ai installé gtk development environment et le runtime, pourtant)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager