【问题标题】:JavaFX - StackPane component jumpingJavaFX - StackPane 组件跳转
【发布时间】:2014-09-04 16:03:24
【问题描述】:

我最近探索了 JavaFX,发现了一个通过 php 脚本执行登录的简单登录表单。 根据结果​​,登录表单指示错误标签或重定向到新场景。

在实际登录过程中,我想显示一个进度条,只要登录不成功,我就会用错误标签交换(可见性切换)。

由于某种原因,标签出现一次后进度条会跳转到新位置。

显示错误行为的视频:

Video of the issue

重现此行为的最小示例(JDK8,语言级别=8):

Code sample

【问题讨论】:

    标签: java user-interface javafx java-8


    【解决方案1】:

    组件正在跳跃,因为当您将text 应用到Label 时,StackPane 的宽度会增加,ProgressBar 会转移到CENTER

    为了将来参考,您可以通过将样式应用于 StackPane 或任何其他布局来检查类似现象

    <StackPane style=" -fx-border-color:black; 
                    -fx-border-width: 1; -fx-border-style: solid;">
    

    为避免这种情况,您必须将ProgressBar 包装在HBox 中并设置alignment of the HBox

    ...
    <Label id="login-status-label" fx:id="loginStatusLabel"  />
    <HBox alignment="CENTER_RIGHT">
        <ProgressIndicator id="login-status-progress-indicator" 
              fx:id="loginStatusProgressIndicator" prefHeight="15.0" 
                                       prefWidth="15.0" visible="false"/>
    </HBox>
    ...
    

    【讨论】:

    • 感谢您的回答。这解决了我遇到的问题。谢谢你的解释!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-29
    • 2017-03-25
    • 1970-01-01
    • 2023-03-28
    • 1970-01-01
    相关资源
    最近更新 更多