Anzeige:
Ergebnis 1 bis 1 von 1

Thema: Probleme mit TreeView (GTK2)

  1. #1
    Registrierter Benutzer
    Registriert seit
    15.06.2003
    Beiträge
    13

    Probleme mit TreeView (GTK2)

    Hallo Leute,

    ich habe irgend wie ein kleines Problem damit Daten in einem TreeView
    hinzu zufügen. Es kommt kein Fehler, es tauchen einfach keine Daten
    im TreeView auf.


    ausschnitt aus der header datei:
    Code:
    enum {
    	COL_PICTURE = 0,
    	COL_TEXT1,
    	COL_TEXT2,
    	COL_NUMBER
    } ;
    
    struct data{
    	GtkWidget  *treeview;
    } list;
    callback für das hinzufügen von den Daten :
    Code:
    void
    add(GtkWidget *widget,
                         gpointer daten)
    {
      GtkTreeModel  *model;
      GtkTreeIter     iter;
      GdkPixbuf       *icon;
      
      model = gtk_tree_view_get_model(GTK_TREE_VIEW(daten));
      
      icon = load_pixbuf("icon.png"); // meine function zum laden eines bildes
      
      gtk_list_store_append(GTK_LIST_STORE(model), &iter);
      gtk_list_store_set(GTK_LIST_STORE(model), &iter,
                         COL_PICTURE, icon,
                         COL_TEXT1, "text",
    	             COL_TEXT2, "text",
                         -1);
    }
    function zum erstellen des treeviews :
    Code:
    static GtkTreeView *
    create_treeview(void)
    {
    	GtkTreeViewColumn   *picture_column,
                                         *text1_column,
                                         *text2_column;
    	GtkCellRenderer     *picture_renderer,
                                     *text1_renderer,
                                     *text2_renderer;
    	GtkTreeView *treeview;
    	GtkListStore *model;
    
    	model = gtk_list_store_new(COL_NUMBER,
    						GDK_TYPE_PIXBUF,
    						G_TYPE_STRING,
    						 G_TYPE_STRING);
      
    	treeview = g_object_new(GTK_TYPE_TREE_VIEW,
    						"model", model,
    						"headers_visible", TRUE,
    						NULL);
    
    	picture_renderer = gtk_cell_renderer_pixbuf_new();
    	text1_renderer = gtk_cell_renderer_text_new();
    	text2_renderer = gtk_cell_renderer_text_new();
    
    
    	picture_column = g_object_new(GTK_TYPE_TREE_VIEW_COLUMN,
    										 "title", "Bild",
    										 "min-width", 120,
    										 NULL);
    	
           text1_column = g_object_new(GTK_TYPE_TREE_VIEW_COLUMN,
    						 "title", "text1",
    						  "min-width", 400,
    						  NULL);
    
    	text2_column = g_object_new(GTK_TYPE_TREE_VIEW_COLUMN,
    						"title", "text2",
    						 NULL);
    
    	 gtk_tree_view_column_pack_start(picture_column,
                                                           picture_renderer,
                                                          FALSE);
    	gtk_tree_view_append_column(treeview, picture_column);
    	gtk_tree_view_column_pack_start(settings_column,
                                                           settings_renderer,
                                                          FALSE);
    	gtk_tree_view_append_column(treeview, settings_column);
    	gtk_tree_view_column_pack_start(button_column,
                                                          button_renderer,
                                                          FALSE);
    	gtk_tree_view_append_column(treeview, button_column);
    
    	return treeview;
    }
    signal handler ausschnitt für den button zum hinzufügen :
    Code:
    .
    .
    .
    	g_signal_connect(GTK_OBJECT(hbuttons[0]),
    					 "clicked",
    					 G_CALLBACK(add),
    					 GTK_TREE_VIEW(list.treeview));
    .
    .
    .
    Also ich sitz da schon ne ganze weile dran und find den fehler nicht.
    Kann mir jemand helfen?
    Geändert von Pinocchino (08-05-2006 um 19:47 Uhr)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •