Ricardo:
Muchas gracias...pero estos ejemplos de combo que me pasas tienen solo
entradas de texto, sin valor asociado...

Yo queria saber como se hace para construir un combo con una lista de
opciones, en la q cada una tenga un valor asociado...de forma de al elegir
una yo pueda tener el valor asociado (un ID)

Mi duda surge a partir de un ejercicio de final de Taller 1 Veiga, en la que
se pide hacer un combo con los meses del año y cada mes tenga como valor
asociado la cantidad de dias en el mes (enero (31), febrero (28), marzo
(31), abril (30), ....)

Juro que no puedo encontrar la  forma de hacerlo...
Tengo este codigo, lo unico que pude construir en base al tutorial oficial
de GTK: me aparece la ventana con el combo, me aparecen hasta las 4 lineas
en la lista desplegable, pero no me aparecen las opciones como texto
(aparecen vacias)


#include <gtk/gtk.h>

enum {
  COLUMN_STRING,
  COLUMN_INT,
  COLUMN_BOOLEAN,
  N_COLUMNS
};

int combobox(int argc, char **argv) {

    GtkWidget * ventana;
    GtkWidget * combo;

    GtkListStore *list_store;
    GtkTreeIter iter;

    gtk_init(&argc, &argv);

    list_store = gtk_list_store_new (N_COLUMNS,
                                     G_TYPE_STRING,
                                     G_TYPE_INT,
                                     G_TYPE_BOOLEAN);

    gtk_list_store_append (list_store, &iter);
      gtk_list_store_set (list_store, &iter,
                          COLUMN_STRING, "some_data1",
                          COLUMN_INT, 1,
                          COLUMN_BOOLEAN,  FALSE,
                          -1);
    gtk_list_store_append (list_store, &iter);
      gtk_list_store_set (list_store, &iter,
                          COLUMN_STRING, "some_data2",
                          COLUMN_INT, 2,
                          COLUMN_BOOLEAN,  FALSE,
                          -1);
    gtk_list_store_append (list_store, &iter);
      gtk_list_store_set (list_store, &iter,
                          COLUMN_STRING, "some_data3",
                          COLUMN_INT, 3,
                          COLUMN_BOOLEAN,  FALSE,
                          -1);
    gtk_list_store_append (list_store, &iter);
      gtk_list_store_set (list_store, &iter,
                          COLUMN_STRING, "some_data4",
                          COLUMN_INT, 4,
                          COLUMN_BOOLEAN,  FALSE,
                          -1);

    combo = gtk_combo_box_new_with_model(GTK_TREE_MODEL(list_store));

    ventana = gtk_window_new(GTK_WINDOW_TOPLEVEL);

    g_signal_connect(G_OBJECT(ventana), "delete_event",
G_CALLBACK(gtk_main_quit), NULL);
    g_signal_connect(G_OBJECT(ventana), "destroy",
G_CALLBACK(gtk_main_quit), NULL);
    gtk_container_set_border_width(GTK_CONTAINER(ventana), 10);

    gtk_container_add(GTK_CONTAINER(ventana), combo);

    gtk_widget_show(combo);

    gtk_widget_show(ventana);

    gtk_main();

    return 0;
}


A quien me pueda ayudar, muchas gracias !!!!!!!
MA_Xx


On Fri, Dec 5, 2008 at 12:58 AM, Ricardo Markiewicz <[email protected]>wrote:

> 2008/12/5 Ricardo Markiewicz <[email protected]>:
> > 2008/12/5 Maximiliano Milicich <[email protected]>:
> >> Hola:
> >> Alguien q sepa de GTK+2.0 (en C) me podra pasar un ejemplo de como
> construir
> >> un combo box con entradas y valores asociados ?
> >> Puedo lograr un Combo Box con solo entradas de texto, pero me estoy
> >> volviendo loco intentando encontrar la manera de que el Combo tenga cada
> >> elemento con un valor  asociado (digamos, un numero para cada entrada de
> >> texto)...
> >>
> >> Ejemplo
> >> Juan  (valor asociado 1)
> >> Pepe (valor asociado 2)
> >> Jose (valor asociado 3)
> >>
> >> Me lei el tutorial oficial de GTK de punta a punta y no hay un ejemplo
> de
> >> eso...
> >> Y en el GTK Reference Manual no dan ejemplos...solo explican que hace
> cada
> >> funcion y no puedo llegar a entender como hacerlo... =(
> >
> > http://library.gnome.org/devel/gtk-tutorial/stable/x1065.html
>
> Y http://zetcode.com/tutorials/gtktutorial/gtkwidgetsII/ también te
> puede servir.
>
> Saludos
>
> --
> --
> Ricardo Markiewicz
> http://www.gazer.com.ar/
>
> _______________________________________________
> Lista de correo Programacion.
> [email protected]
> http://listas.fi.uba.ar/mailman/listinfo/programacion
>
_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion

Responder a