listview - JavaFX 2 中的多列(包装)ListView

标签 listview javafx-2 javafx

我正在创建一个 ListView 来填充指定目录中的许多图像。这一切都很好,但令人烦恼的是,我似乎找不到一种方法来让 ListView 换行或显示在多列中(目前每行只有一个图像,考虑到没有文本,这很烦人。)

对于 Swing 的 JList,这可以通过 jList.setLayoutOrientation(JList.HORIZONTAL_WRAP); 来完成,但我在 JavaFX 2 中没有看到类似的东西 - 我是否遗漏了什么?

最佳答案

由于我遇到了完全相同的问题,所以我也朝这个方向进行了调查。如果您只有很少的项目,TilePane 可能是一个解决方案,但如果您有很多项目,它会变得非常慢并且消耗大量资源。 (TilePane 在设计上不支持 UI 虚拟化。也就是说,重用/回收不再位于视口(viewport)中的项目节点。)

因此,我的想法是子类化 ListView 并创建一个 WrappedListView,但我偶然发现了一个完美的解决方案:ControlsFX 是 JavaFX 控件的开源集合,并且它恰好有一个支持虚拟化的 GridView 控件。

ControlsFX GridView

GridView in Action

以下是 ControlsFX 中所有控件的概述。 http://fxexperience.com/controlsfx/features/

为了下载库,他们在其开发站点中提供了标准方法,例如 Maven Dependency:https://bitbucket.org/controlsfx/controlsfx/

关于listview - JavaFX 2 中的多列(包装)ListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12883001/

相关文章:

android - 在 android 中使用 ListView 无法正常播放视频

java - 将 TextView 更改为自定义 ListView 中的可点击单词

c - Win32 ListView常用控件重画问题

java - 如何使用 hashmap 或任何列表而不是以下格式的可观​​察列表填充 javafx tableview

javafx - 使用 javaFX 生成随机放置的方 block

Javafx ListView动态更新

css - 制作更小的 JavaFX ComboBox

android - 如何在另一个 ScrollView 中滚动 ListView

JavaFX 应用程序在关闭后仍在运行

javafx动态填充 ListView