java - 结合 javafx 2 ListView 和 GridPane 功能

标签 java listview layout javafx-2 javafx

我的目标是显示一个缩写列表,每行包含两个条目:缩写和相应的长版本。为了获得漂亮的布局,我使用了 GridPane,因为所有条目都是垂直对齐的 - 它很容易阅读。

但我也想滚动到单击的缩写并将焦点设置在它上面,就像在它的 ListView 版本中一样。

例如,旧 HTML 中的 # on page 链接。我是否想念另一个 javafx 布局元素来实现此目的?

最佳答案

我不认为提供的控件适用于您描述的特定场景。但是,我认为这些选项之一可能适合您...

  1. 使用 TableView 控件并为要显示的信息添加两列(一列用于缩写,另一列用于全称)。 TableViews 还具有您正在寻找的 scrollTo 和 setFocus 功能。 Here是帮助您开始使用 Tableview 控件的好资源。如果您的意图是这样,您还可以使用 CSS 设置 Tableview 的样式,使其看起来不像表格,而更像列表。
  2. 第二个选项是在您的 ListView 上设置一个自定义单元格工厂,该工厂使用 HBoxes、VBoxes、Labels 等构建自定义单元格,以实现您想要的外观。您还希望使用单元格工厂为每个 ListView 单元格填充一个包含缩写文本和长版文本的对象。几个很好的资源,1 , 2

虽然我认为这两个选项都可以正常工作,但我会建议选项 1,因为在选项 2 中,您无论如何都在构建一个表类型结构。我希望这对您有所帮助!

关于java - 结合 javafx 2 ListView 和 GridPane 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16236927/

相关文章:

java - 创建具有值数组的灰度图像

java - 如何替换直到第一次出现 HTML <b>...</b> 标记

android - 在 Android ListView 中查看不重绘

android - android :layout_centerVertical and android:layout_gravity ="center_vertical"? 之间有区别吗

java - 如何使用 SQL 查询转义用户提供的参数?

java - 应用程序崩溃。为什么?

android - 如何从 Android 的上下文菜单中删除 ListView 对话框项?

android - 使用 ListView 项目内的按钮触发 PopupMenu

css - Div布局出错

html - Bootstrap 3 : Create list with text and image left aligned