我尝试从文本文件中保存并加载树视图
使用滚动窗口容器重新查看:
GtkWidget *scrolledwindow = gtk_scrolled_window_new(NULL, NULL);
gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_SHADOW_IN);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
GtkListStore *store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING);
GtkWidget *view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(store));
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW(view), TRUE);
gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(view), FALSE);
selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(view));
gtk_tree_selection_set_mode(selection, GTK_SELECTION_SINGLE);
gtk_container_add(GTK_CONTAINER(scrolledwindow), view);
情景:
在第一种情况下,treeview包含三行,其中输入了信息。此时滚动条不可见,因为树视图“请求大小”是三行:
1. RED 100.00
-------------------
2. YELLOW 101.00
-------------------
3. BLUE 102.00
-------------------
我编写了一个代码来更新,保存和加载一个文本文件的树视图(我使用“从文件加载”按钮和“GTK_FILE_CHOOSER”)
从此文本文件导入时包含更多项目(四,五,...)时,列表会更新所有新行,但会收到此警告:
GtkScrolledWindow 0x922f1e0 is mapped but visible child GtkScrollbar 0x93812b0 is not mapped
1. RED 100.00
-------------------
2. YELLOW 101.00
-------------------
3. BLUE 102.00
-------------------
4. GREEN 103.00
-------------------
当我将列表导出到文本文件时,会显示相同的消息。
在“文件选择器”对话框被销毁后显示此消息。
当滚动条可见,文件选择器对话框启动时,会发生这种情况,我改变主意,选择从GTK_FILE_CHOOSER的“取消”按钮取消操作。
由于