Portál AbcLinuxu, 8. prosince 2025 12:51
Řešení dotazu:
#include <gtk/gtk.h>
int main (int argc, char **argv) {
GtkWidget *mainwindow;
GtkWidget *treeview;
GtkListStore *model;
GtkTreeIter iter;
gtk_init (&argc, &argv);
mainwindow = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (mainwindow, "destroy", G_CALLBACK (gtk_main_quit), NULL);
model = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_STRING);
treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (model));
gtk_container_add (GTK_CONTAINER (mainwindow), treeview);
gtk_tree_view_insert_column_with_attributes (
GTK_TREE_VIEW (treeview), -1, "Ukazka", gtk_cell_renderer_text_new (),
"text", 0, "background", 1, NULL);
gtk_widget_show_all (mainwindow);
gtk_list_store_append (model, &iter);
gtk_list_store_set (model, &iter, 0, "Cervena", 1, "Red", -1);
gtk_list_store_append (model, &iter);
gtk_list_store_set (model, &iter, 0, "Zelena", 1, "Green", -1);
gtk_list_store_append (model, &iter);
gtk_list_store_set (model, &iter, 0, "Vychozi", -1);
gtk_main ();
return 0;
}
Funguje to, snad je vše tak, jak to má správně být
Jen teď nějak nevím, k čemu je u GtkCellRendererText vlastnost background-set, ale funguje to, i když ji nastavím jako FALSE.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.