Probleme mit TreeView (GTK2)
Posted: 08. May 2006 19:54
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:
callback für das hinzufügen von den Daten :
function zum erstellen des treeviews :
signal handler ausschnitt für den button zum hinzufügen :
Also ich sitz da schon ne ganze weile dran und find den fehler nicht.
Kann mir jemand helfen?
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: Select all
enum{
COL_PICTURE = 0,
COL_TEXT1,
COL_TEXT2,
COL_NUMBER
} ;
struct data{
GtkWidget *treeview;
} list;
Code: Select all
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); }
Code: Select all
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;
}
Code: Select all
.
.
.
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?