首页 / JAVA / Javafx在全屏时调整组件大小
Javafx在全屏时调整组件大小
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Javafx在全屏时调整组件大小,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2749字,纯文字阅读大概需要4分钟。
内容图文
![Javafx在全屏时调整组件大小](/upload/InfoBanner/zyjiaocheng/805/b9ded656bf444e1084b9dda871966cbc.jpg)
原始尺寸截图
全屏截图
当我调整大小时,我如何很好地安排组件.
即时通讯使用FXML进行GUI
FXML代码
<AnchorPane id="AnchorPane" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" fx:controller="style.LoginController">
<children>
<Button fx:id="login" layoutX="250.0" layoutY="242.0" mnemonicParsing="false" onAction="#login" prefHeight="32.0" prefWidth="101.0" text="Login" />
<ImageView fx:id="img2" fitHeight="32.0" fitWidth="32.0" layoutX="109.0" layoutY="184.0" pickOnBounds="true" preserveRatio="true">
<image>
<Image url="@../../../../../Downloads/Drawing%20(23).png" />
</image>
</ImageView>
<Label fx:id="title" alignment="CENTER" focusTraversable="false" layoutX="166.0" layoutY="48.0" opacity="0.83" prefHeight="42.0" prefWidth="269.0" styleClass="title" text="Label" textAlignment="CENTER" textOverrun="CENTER_ELLIPSIS">
<font>
<Font name="Arial Narrow" size="36.0" />
</font>
</Label>
<TextField fx:id="txtusername" layoutX="159.0" layoutY="126.0" prefHeight="32.0" prefWidth="283.0" promptText="Username" styleClass="fields" />
<PasswordField fx:id="txtpassword" layoutX="159.0" layoutY="183.0" prefHeight="32.0" prefWidth="283.0" promptText="Password" styleClass="fields" />
<ImageView fx:id="img1" fitHeight="32.0" fitWidth="32.0" layoutX="109.0" layoutY="126.0" pickOnBounds="true" preserveRatio="true">
<image>
<Image url="@../../../../../Downloads/Drawing%20(22).png" />
</image>
</ImageView>
<ProgressIndicator fx:id="progress" layoutX="197.0" layoutY="120.0" minHeight="0.0" minWidth="0.0" prefHeight="128.0" prefWidth="188.0" progress="0.0" styleClass="progressind" />
</children>
</AnchorPane>
解决方法:
问题是因为您使用AnchorPane作为根窗格.虽然,你可以将AnchorPane用于这样的场景,但我个人不喜欢它,因为你需要做很多事情才能做到正确.有更简单的方法,这就是我要告诉你的.
来自Javadocs:
AnchorPane allows the edges of child nodes to be anchored to an offset from the anchor pane’s edges.
解
使用不同的布局.可以是GridPane或VBox.这些布局具有子alignment而不是锚,这允许儿童与特定位置对齐.
要重新调整孩子的大小,可以在其上设置HGrow/VGrow属性.
例
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.geometry.*?>
<?import java.lang.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<VBox alignment="CENTER" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" spacing="20.0" style="-fx-background-color: DARKCYAN;" xmlns="http://javafx.com/javafx/8.0.40" xmlns:fx="http://javafx.com/fxml/1">
<children>
<Label text="Easy Doctor" />
<TextField promptText="Username" />
<TextField promptText="Password" />
</children>
<padding>
<Insets bottom="50.0" left="50.0" right="50.0" top="50.0" />
</padding>
</VBox>
这是一个关于它看起来如何的小gif:
内容总结
以上是互联网集市为您收集整理的Javafx在全屏时调整组件大小全部内容,希望文章能够帮你解决Javafx在全屏时调整组件大小所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。