我把treeview加入到滚动窗口去了,正常情况都能实现水平垂直自动滚动
GtkWidget *scrolledWindow = gtk_scrolled_window_new(NULL, NULL);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledWindow),GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
gtk_container_add(GTK_CONTAINER(scrolledWindow), treeView);但是我之后发现只要是显示东西一长,就自动扩展控件,并没有出现滚动条,这个问题很奇怪。正常情况不会发生。
后来我发现,扩展的treeview横向内容并没有达到需要扩展的程度,他就自动扩展了。之后我发现右侧同步显示内容的label标签反而是他显示的内容超出了控件大小进行了扩展。
原来自己是把treeview和一个label标签加入到了table布局里面。table布局,创建函数的第3个true时,会设置控件所有单元格大小相同
当label标签过长导致单元格扩展时,treeview所在的单元格也就自动扩展了。所以treeview也跟着扩展了。表面上就像加入的滚动窗口没有用一样。
解决办法就是很简单,让右侧的label标签自动换行就行了。之后就正常显示了