HBox的元素工作错误

时间:2017-02-27 15:19:11

标签: javafx view label elements hbox

当金钱标签(进入moneyBox)不超过5位数时,一切都很好,但是当钱增加时,设计将变得混乱。我该如何解决?

    StackPane bottom = new StackPane();
    VBox vboxBottom = new VBox();
    HBox hboxBottomElements = new HBox(15);
    HBox hboxBottomMain = new HBox(0);

    hboxBottomElements.getChildren().addAll(visaLabel, separator2, adLabel, separator3, governRelationStatus, separator4, christianityLabel);
    hboxBottomElements.setPadding(new Insets(5));

    vboxBottom.getChildren().addAll(season, separator1, hboxBottomElements);
    vboxBottom.setPadding(new Insets(30,0,0,0));

    bottom.getChildren().addAll(vboxBottom, next);
    StackPane.setAlignment(next, Pos.BOTTOM_RIGHT);
    StackPane.setMargin(next, new Insets(0,0,0,999));
    hboxBottomMain.getChildren().addAll(moneyBox, bottom);

    layout.setBottom(hboxBottomMain);

Before

After

1 个答案:

答案 0 :(得分:0)

你可以做的一件事就是改变货币变大时的显示方式。

您正试图显示10,000,000$。您可以将其更改为10m$,其中M为百万。然后,当您到达1,000m时,您可以将其更改为1b等等。

我不确定你是如何获得这个数字的,但它可以通过一些简单的算术来实现。即..

if(money > 9,999,999){
    displayMoney = money/1,000,000.00;
    displayMoneyString = displayMoney + "m$";
}

这样就可以删除一些不必要的或大数字,

希望这有帮助。