GridPane有两列:第一列包含固定大小的ImageView,第二列包含带有文本元素的VBox。我需要这个VBox来适应列宽。网格有正确的尺寸,ImageView,但第二列中的VBox适合它包含的文本,而不是父(网格)。
VBox box = new VBox();
// all three texts can be changed during program execution by user
// (so 'box' width cannot be based on children widths)
box.getChildren().addAll(new Text("1"), new Text("2"), new Text("3"));
box.setStyle("-fx-background-color: red;");
Image image = ...; // image is always 150x150 px
ImageView imgView = new ImageView(image);
GridPane grid = new GridPane();
grid.add(imgView, 0,0);
grid.add(box,1,0);
grid.add(new Text("another content"), 0,1,2,1);
根据给出的示例,我希望'box'具有与'grid'对象的第二列相同的宽度。怎么解决这个?
提前致谢
您可以将hgrow
设置为GridPane的子级。将hgrow
设置为always
将允许它们占用对它们的可用的总宽度
。
由于box
是gridPane的子级,您可以使用静态方法sethgrow
应用该属性
GridPane.setHgrow(box, Priority.Always);
对于height
的类似问题,可以使用setVGrow(节点子级,优先级值)。
我在fxml文件中的VBox中有一个带有标签、文本字段和组合框的窗格。让我们称之为tempPane。在同一阶段,我有一个按钮。按下按钮后,我需要向VBox中添加一个与tempPane完全相同的窗格。这就是,向VBOX动态添加一个窗格。我可以将按钮、标签或文本字段等单个控件添加到VBox中,但在尝试添加此新窗格时无法获得相同的结果。 控制器代码的一部分: 我得到的错误是: 那么,为什么我会得到这个重
我无法在SceneBuilder(eclipse)中使用GridPane,当我尝试在项目中插入GridPane时,SceneBuilder会在没有提示任何消息的情况下退出。 这就是我在日志文件中找到的:
如何将输出连接到? 在其JList上有一个监听器,以便将选定的行输出到控制台。我怎么能直接输出到输出的? 是否可以触发一个由Main拾取的事件?就足够了吗? Main.java:
我有两个问题 2.最初VBox会占据全场景区域,如何让它(重新定位)到场景的半底?
问题内容: 如何将输出连接到? 上有一个侦听器,以便将选定的行输出到控制台。如何将输出定向到JTextPane打开输出? 会引发一个事件Main吗?会的足矣? Main.java: 问题答案: 这是一个使用观察者模式的示例,。请注意,也有可能收听组合的模型。
在JavaFX中使用setRotate()旋转节点(GridPane)后,我对节点(GridPane)的方向有问题。当我旋转节点并将其放入GridPane的一个单元格中时,我希望旋转后的节点适合单元格内部,并随单元格一起调整大小。我添加了一些示例代码,向您展示我希望得到的结果。 如果您运行代码,您将看到stage底部的GridPane非常适合它的单元格。但旋转后的网格窗格没有。我还将添加一张图片,