问题标签 [vbox]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
215 浏览

java - JavaFX FXML中如何在VBox中公平分配节点

如何在 VBox 中公平分配几个部分?换句话说,我有这个 FXML 代码:

那个产品这个视图:

在此处输入图像描述

我怎样才能获得这样的东西?

在此处输入图像描述

0 投票
1 回答
1428 浏览

javafx - JavaFX:动态添加的 VBox 不显示

我正在开发一个需要 VBoxes 的“表格”表示的项目。我的应用程序分层布局是 GridPane -> VBox(在其中一个单元格中)-> VBoxes(在彼此之上显示不同的数据集)-> Data。我有两个场景。

数据显示在场景 1 上。用户可以通过表单和单击场景 2 上的按钮添加数据。然后,添加的数据应该再次显示在现有数据的下方,作为场景 1 的父 VBox 内的 VBox。

这是清楚的代码:

我的场景 1 .fxml 文件如下所示(简化):

场景 2 只有一个按钮和一个 TextField:

我的场景 1 控制器(控制器)如下所示:

之所以这样设计,是因为 dataBox 包含的元素多于标签,但在这种情况下,这似乎与我无关。

我的场景 2 控制器 (addDataController) 如下所示:

因此,当在场景 2 中单击 Add-Data-Button 时,触发的方法会将输入的数据传递给场景 1 的控制器。这是因为新数据现在应该显示在场景 1 中。

我觉得逻辑不起作用(在此处编辑),因为当我要求

在添加数据之前和之后,它总是只有一个 Child,即使它应该还有一个......

如果我人为地填充一个字符串数组并将所有内容从 addData 移动到(String s)到 Initialize(...),它确实可以工作并且数据在父 VBox 中显示为 VBox。

我没有发布主类,因为加载控制器和场景更改不是问题。

非常非常感谢大家的帮助!:)

0 投票
1 回答
10341 浏览

java - 在javafx中将节点对齐到Vbox的右侧

我正在尝试使用 javafx 制作一个聊天框,我希望来自客户端的消息向右对齐,其余的向左对齐。

我正在使用 a Vbox,包装在 aScrollpane和那个 Vbox 中,每条消息都包装在另一个 Vbox 中。但是对齐内部 Vbox 不起作用。

这是我的代码:

另外我只需要设置 HPos 但我不知道如何设置,所以我使用了 Pos.TOP_RIGHT。有谁知道如何做到这一点?任何有关如何以更好的方式制作聊天框的建议将不胜感激:)

0 投票
1 回答
979 浏览

javafx - 使用 ScrollPane 添加内容时 JavaFx Resize VBox

我对 JavaFx 比较陌生,我需要帮助来让 Vbox 随着节点的添加而增长。

我在 ScrollPane 中放置了一个 VBox。当它们进入时,VBox 会被 TitledPanes 填满。但是一旦 TitledPanes 填满了分配给 Vbox 的空间,TitledPanes 就会开始重叠。理想情况下,我希望 Vbox 自行调整大小并使用 ScrollPane 进行导航。

我将 Vbox 最大高度设置为USE_COMPUTED_SIZE. 我在 ScrollPane 中添加了一个监听器来监听 VBox 大小的变化,但没有运气。有什么建议么?

0 投票
1 回答
981 浏览

java - 在 VBox 上调用方法抛出 NullPointerException

我正在开发一个客户端-服务器信使应用程序以供练习。在我的客户端模块中有 Client 类、ClientController 类、ClientGUI 类和 fxml 文件、Message 类、一个 CSS 文件和 Main 类。我的 ClientGUI 类和 ClientController 类中有一个方法 display(String message) ,它将一个 Message 对象添加到具有 id #messages 的 VBox 中。

这是我的问题:在我的 ClientController 类中有一个 display() 方法,它调用 ClientGUI 的 display() 方法(我知道这似乎是多余的,但这不是问题)。当在我的 ClientGUI 类中调用 display() 方法时,例如在 setOnMouseClick() 方法中,它可以正常工作。但是,当从我的 ClientController 类调用此方法时,我得到一个 NullPointerException,它指向我的 ClientGUI 类的 display() 方法中的 VBox 类型的消息变量。我试过 messages.getChildren().add(new Message(message));VBox test = messages;

后者工作正常,而前者抛出异常。我还尝试在我的消息变量上调用其他方法,所有这些方法都会引发相同的错误。为什么会这样?

(它仍处于开发过程中,因此可能存在其他不相关的问题)

客户:

客户端控制器:

客户端GUI:

堆栈跟踪:

0 投票
1 回答
4590 浏览

java - 如何均匀分布 JavaFX VBox 的元素

我正在使用 aVBox并为其添加了三个标签。标签之间的垂直间距是用setSpacing()方法设置的。但它是一个固定值,比如说20。如果我将值更改为50,空间将增加。但它是硬编码。

我想知道是否有任何预定义的方法可以使用,以便标签均匀分布(基于VBox高度)。如果我调整窗口大小,则应调整标签(我的意思是标签之间的间距),以使它们仍然均匀分布(任意两个标签之间的间距相同)。

由于VBox设置在 a 的左侧BorderPane,我希望“显示行 1 ”处的“ lab0 ”、“显示行 5 ”处的“ lab1 ”和“显示行 9 ”处的“ lab2 ” (就对齐而言)。如果添加更多,“ lab2 ”最后应该是“ Display Line X ”。TextFields

我的代码在这里...请标记。

0 投票
1 回答
77 浏览

javafx - 将 VBox 的值设置为不同的 FXML VBox?

您可以使用 BorderPane 来做到这一点,即:

VBox 没有 .set(node) 方法。

0 投票
0 回答
51 浏览

java - 无法更改 #vbox:focused 上的 vbox 边框

当 vbox 被聚焦时,我们可以使用 css 来改变它们吗?

悬停工作正常。但是试图设置焦点 vbox 的颜色它不起作用。

0 投票
0 回答
699 浏览

java - javafx - 设置 png 图像的背景

我有一个ImageView由 png 图像(透明背景)组成的。我想连续改变图像的颜色。我可以使用JFXFillTransitionjfoenix 库中的方法更改颜色。该方法的构造函数需要javafx.scene.layout.Region,因此不能javafx.scene.Image.ImageView直接应用。我正在使用 aVBoxImageView在其中添加VBox. 显然,默认情况下VBox's 的宽度不会包裹内容(此处ImageView)。给出了包装内容的解决方案。但是 group 不能用作JFXFillTransition这里的参数。因此,如果我运行代码VBox更改的颜色,但不限于ImageView(因为VBox大于图像)。那么,我怎样才能缩小尺寸VBox以便它仅包装图像(任何其他适合此的窗格也可以)?

代码片段:

在此处输入图像描述

0 投票
0 回答
172 浏览

user-interface - FXML 使控制器中的 VBox 不可见

我已经做了一些研究,似乎没有任何关于控制器的问题,所以我开始了。所以我在 SceneBuilder 的 Vbox 中包裹了一些形状。

您可以在此处更改不透明度,但此代码不在控制器中。

所以我试图通过控制器来做到这一点。但不幸的是,这不起作用?

是不是因为您不能像使用标签或按钮那样为 VBox 分配方法,因此意味着未执行不透明项目的操作?

我应该提到我想要做的是通过将对象设置为不透明来使其消失并通过将不透明度设置为 100 来重新出现。

虽然我现在考虑过使用 setVisible,但我对如何让不透明度起作用很感兴趣。