当前位置: 首页 > 面试题库 >

JavaFX 2自动列宽

百里承业
2023-03-14
问题内容

我有一个JavaFX 2表,该表显示人员的联系方式,让我们想象一下三列:名字,姓氏和电子邮件地址。当我的应用程序启动时,它将在表中填充有关系统中已有人员的几行数据。

问题是列宽都相同。大多数情况下,名字和姓氏都会显示完整,但电子邮件地址会被裁剪。用户可以双击标题中的分隔符来调整列的大小,但这很快就会变得乏味。

表格预先填充后,我想以编程方式调整所有列的大小以显示它们包含的数据,但我不知道如何实现此目的。我可以打电话,col.setPrefWidth(x)但这并没有真正的帮助,因为我不得不猜测宽度。


问题答案:

如果您的总列数是预先知道的。您可以在表格视图的宽度之间分配列的宽度:

nameCol.prefWidthProperty().bind(personTable.widthProperty().divide(4)); // w * 1/4
surnameCol.prefWidthProperty().bind(personTable.widthProperty().divide(2)); // w * 1/2
emailCol.prefWidthProperty().bind(personTable.widthProperty().divide(4)); // w * 1/4

在此代码中,调整表格视图的大小时,列的宽度比例保持同步,因此您无需手动进行操作。同样surnameCol,占表视图宽度的一半空间。



 类似资料:
  • 我对java和javafx很陌生,有一个我无法解决的问题。我需要将新的自定义控件动态添加到 javafx 场景中。此外,我需要主控件和添加的控件之间的交互。我已经在网上找到了一些有用的信息,但无法将它们放在一起。 所以我举了一个小例子来解释: 主要类别: 主fxml: 及其控制器: 现在要动态添加的控件: 其影响: 和控制器: 用法是:应将fxml2添加到fxml1的hbox中。然后在fxml1中

  • 希望我能把问题弄得尽可能清楚。我正在使用JavaFX库为GUI开发一个小型java应用程序。我正在做一个POP连接,并将消息存储为ObservableList。为此,我使用javax.mail。我将这个observablelist传递给一个tableview,并通过以下方式将所需的值传递给TableColumns: Subject和sentDate是完美的读入。但不幸的是,“from”将对象引用添

  • 我注意到在JavaFX1.x中,脚本语言允许非常简单的字符串国际化。JavaFX2中有类似的特性吗? 基本上:国际化JavaFX2应用程序的最佳实践是什么?

  • 问题内容: 鉴于以下几点,我如何使我的最后一列自动调整大小?(最后一列应自动调整内容的宽度。假设我只有1 li元素应该收缩,而我只有3 li元素等等): CSS: 问题答案: 以下将解决您的问题: 灵活的基于类的解决方案 一种更灵活的解决方案是创建一个类,并将其应用于您要确保其内容适合一行的任何列: 然后在您的HTML中:

  • 问题内容: 我正在尝试自动调整工作表的列大小。我正在写文件,最后我尝试调整所有列的大小。 上面的代码不起作用。不更改列大小以适合文本 更新 我正在使用的作家 问题答案: 如果将列设置为AutoSize,PHPExcel会尝试根据列的计算值(基于任何公式的结果)以及格式掩码(例如千位分隔符)添加的任何其他字符来计算列宽。 默认情况下,这是宽度:使用GD时,可以使用一种更准确的计算方法,该方法还可以处