JavaGNOME(GTK):为什么我的树视图显示为空?
我试图在GtkTreeView中显示一个字符串列表(文件名,待说明)。我正在创建一个列,并尝试用CellRenderText填充它JavaGNOME(GTK):为什么我的树视图显示为空?,java,gtk,gnome,gtktreeview,Java,Gtk,Gnome,Gtktreeview,我试图在GtkTreeView中显示一个字符串列表(文件名,待说明)。我正在创建一个列,并尝试用CellRenderText填充它 //Setup listview TreeView imageList = (TreeView)gladeBuilder.getObject("imageListTreeView"); TreeViewColumn column = imageList.appendColumn(); DataColumnString imageCol
//Setup listview
TreeView imageList = (TreeView)gladeBuilder.getObject("imageListTreeView");
TreeViewColumn column = imageList.appendColumn();
DataColumnString imageColumnString = new DataColumnString();
//Fill listview
ListStore listStore = new ListStore(new DataColumnString[]{imageColumnString});
File[] imageFiles = new File("/path/to/files").listFiles();
// For each file:
for (File file : imageFiles) {
TreeIter row = listStore.appendRow(); //add a row
listStore.setValue(row, imageColumnString, file.getName());
}
CellRendererText cellRendererText = new CellRendererText(column);
cellRendererText.setText(imageColumnString);
程序编译和运行时没有错误,但列表显示为空。有人可以帮我找到错误?添加
imageList.set\u model(listStore)
,它实际将您的视图与模型关联。这是必需的,否则视图将保持为空,因为它没有模型关联,除非您在生成器文件中指定了它,我现在只能猜测。是的,这就是解决方案!我忘了这么做,因为我下面的教程没有使用生成器:模型链接实例化视图:newtreeview(model);非常感谢。