Я хотел бы создать простую таблицу в GTK со следующим содержанием:Создание простого списка GTK
| test name | 0 | 10 |
Я просто хочу, чтобы создать, но GTK не делает это легко. Я создал GtkListStore, который содержит всю необходимую мне информацию, но, видимо, мне также нужно создать GtkTreeViewColumn. Мне нужно передать значения gtk_tree_view_column_new_with_attributes, но проблема в том, что я не знаю никаких имен атрибутов, и я не могу их найти нигде. Единственный атрибут, который я нашел, это «текст», но я также передаю целые числа без знака. Может ли кто-нибудь сказать мне, что это за атрибуты, и как создать простую таблицу? (Я прочитал https://developer.gnome.org/gtk3/stable/TreeWidget.html кстати)
enum { FILE_NAME = 0, FILE_OFFSET, FILE_SIZE };
GtkWidget* tree;
GtkListStore* store;
GtkTreeIter iter;
GtkCellRenderer* renderer;
GtkTreeViewColumn* column;
store = gtk_list_store_new (3, G_TYPE_STRING, G_TYPE_UINT, G_TYPE_UINT);
gtk_list_store_append (store, &iter);
gtk_list_store_set (store, &iter, FILE_NAME, "test name", FILE_OFFSET, 0,
FILE_SIZE, 10, -1);
tree = gtk_tree_view_new_with_model (GTK_TREE_MODEL (store));
g_object_unref (G_OBJECT (store));
renderer = gtk_cell_renderer_text_new();
column = gtk_tree_view_column_new_with_attributes ("Name", renderer,
"text", FILE_NAME, NULL);
gtk_tree_view_append_column (GTK_TREE_VIEW (tree), column);
С отправленного кода я получаю следующий результат:
| name ? |
| test name |
вы, вероятно, следует также прочитать GtkTreeView учебник по: http://scentric.net/tutorial - это было написано для GTK + 2.x, но API GtkTreeView не изменился между 2.x и 3.x. – ebassi