我希望我的所有组件(文本字段、标签等)保持在固定大小的中心。我在scene builder中制作它,当我看到预览时它会工作,但是当我启动它时,当我调整它的大小时,组件不会停留在中心。
请看这里的图片:http://postimg.org/image/r42kvvfbf/
FXML文件:
<AnchorPane id="AnchorPane" fx:id="root" maxHeight="-1.0" maxWidth="-1.0" minHeight="400.0" minWidth="600.0" prefHeight="-1.0" prefWidth="-1.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2" fx:controller="myController">
<children>
<GridPane alignment="CENTER" prefHeight="-1.0" prefWidth="-1.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<children>
<VBox alignment="CENTER_LEFT" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="-1.0" prefWidth="-1.0" spacing="10.0" GridPane.columnIndex="0" GridPane.rowIndex="0">
<children>
<Label text="ID number" />
<TextField fx:id="id" maxWidth="-Infinity" minWidth="-Infinity" prefWidth="210.0" promptText="" />
<Label text="Password" />
<TextField fx:id="password" maxWidth="-Infinity" minWidth="-Infinity" prefWidth="210.0" promptText="" />
<HBox id="HBox" alignment="CENTER" spacing="5.0">
<children>
<Button mnemonicParsing="false" onAction="#loginAction" text="Вход" textAlignment="CENTER" textOverrun="ELLIPSIS" />
</children>
</HBox>
</children>
<padding>
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0" />
</padding>
</VBox>
</children>
<columnConstraints>
<ColumnConstraints halignment="CENTER" hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints>
</GridPane>
</children>
</AnchorPane>
我尝试过使用StackPane,也只使用VBox,但我无法实现我想要的。请帮帮忙!
问题解决了。也许这对其他人有帮助。
似乎我正在使用组作为我的场景的根。正如JavaFX留档中所说:“如果使用组作为根,场景图的内容将被场景的宽度和高度裁剪,场景大小的改变(如果用户调整舞台大小)不会改变场景的布局图形”。
链接:http://docs.oracle.com/javafx/2/api/javafx/scene/Scene.html
我正在尝试构建一个包含6个窗格(作为父级添加到GridPane布局中)的简单Java项目。我必须在开始时设置窗口大小,并通过参考根布局的宽度和高度,设法将它们均匀地拆分。 但我想要他们调整大小,因为我改变了窗口的大小(使用鼠标,现在他们得到固定的大小)。 下面是我的代码:
我有下面的代码,它设置了一个特定大小的窗口。它还从外部URL加载图像。
我试图在FXML中设计一个用户界面,并部分使用场景生成器。我使用Anchorpane来放置场景中的所有内容。但是,当我将窗口调整到更大的大小时,按钮会从中间向左移动。我想确保它们留在页面的中心。如何做到这一点?谢谢。
我想让JFrame上的组件随着窗口的大小调整而调整大小。 这怎么能做到。 当前,当我使JFrame变小时,组件会保留在相同的位置,然后随着框架变小而消失。 理想情况下,我希望设置一个最小的JFrame大小,它不允许表单变小,但当我将其变大时,组件应该随JFrame移动。 补充:如果我想使用绝对布局管理器,该怎么办。这是我老板比较喜欢的布局经理。 代码: 公共类TestFrame扩展JFrame{p
我使用的是最新版本的Java(FX)、macOS和IntelliJ IDEA CE的Mac电脑。问题是,当我调整JavaFX窗口的大小时,我的Mac会立即崩溃。只有当我按下电源按钮5秒钟后,MacBook才会重新启动。我创建了一个普通IntelliJ JavaFX项目,其中包含以下自动创建的文件: Hello控制器。java 我没有改变任何事情,开始了这个项目。一切正常,直到你尝试调整窗口大小,M
问题内容: 我正在用d3.js绘制散点图。借助以下问题: 获取屏幕,当前网页和浏览器窗口的大小 我正在使用此答案: 这样我就可以将图适合用户的窗口,如下所示: 现在,我希望在用户调整窗口大小时可以调整图的大小。 PS:我的代码中没有使用jQuery。 问题答案: 寻找“响应式SVG”,使SVG响应式非常简单,您不必再担心大小。 这是我的做法: 注意: SVG图像中的所有内容都会随窗口宽度缩放。这包