每个新更改的内容宽度都在增加

时间:2019-11-18 00:43:27

标签: javafx-8

我有一个项目,其中一个窗口是具有GridPane内容的ScrollPane。当我单击一个新节点时,或者我开始在文本字段中键入内容。 GridPane的列的宽度意外增加。谁能解释为什么会这样。 我试图摆脱窗口上的ScrollPane,但仍在继续。我的窗口的宽度也绑定到窗口的宽度。

1 个答案:

答案 0 :(得分:0)

非常感谢您对这个问题的支持。原来,问题与我写下的内容完全无关。问题出在我设置为根据内容增加其列宽的TableView上。

ingredientTable = new TableView<Ingredient>();
ingAmount = new TableColumn<Ingredient, Integer>("amount");
ingUnit = new TableColumn<Ingredient, String>("unit");
ingName = new TableColumn<Ingredient, String>("item");
ingredientTable.getColumns().addAll(ingAmount, ingUnit, ingName);

ingAmount.prefWidthProperty().bind(ingredientTable.widthProperty().multiply(0.1));
ingUnit.prefWidthProperty().bind(ingredientTable.widthProperty().multiply(0.2));
ingName.prefWidthProperty().bind(ingredientTable.widthProperty().multiply(0.70));

由于某种原因,每当我在任何地方更改内容(单击新节点或在TextField上键入)时,表格视图都会增加其宽度。我只是将TableColumn之一的乘法参数减小为0.01,这似乎解决了问题。

很抱歉,我缺少信息,希望在以后的帖子中提供更多详细信息