0

是否可以通过以下方式使用流量窗格?让两个组件(img/label)向左对齐,然后在右侧对齐多个按钮。例子:

    +----------------------------------------------------------------+
    | +------+ +----------+                          +-----+ +-----+ |
    | |  Img | | Text...  |                          | btn | | btn | |
    | +------+ +----------+                          +-----+ +-----+ |
    +----------------------------------------------------------------+

我正在添加用于设计/易用性的按钮,但遇到了一堵砖墙。我宁愿不必更改“控制面板”。

如果不能,它可以在 css 中模拟(浮点数?)

谢谢

4

2 回答 2

1

AFlowPane可以设置边距。是一个示例,显示如何计算边距的宽度,以便按钮右对齐。

scene.widthProperty().addListener( ( observable, oldWidth, newWidth ) ->
{
  final double spacerMargin = newWidth.doubleValue()
      - scene.getRoot().getChildrenUnmodifiable().stream().mapToDouble( node -> node.getLayoutBounds().getWidth() ).sum();
  FlowPane.clearConstraints( btn3 );
  FlowPane.setMargin( btn3, new Insets( 0, 0, 0, spacerMargin ) );
} );

您基本上从场景的宽度中减去 FlowPane 子项的所有宽度。

于 2016-01-19T09:13:47.930 回答
0

是的!

myFlow.add(griddy); // this gridlayout contains img and text
myFlowcontainer.add(Box.createRigidArea(new Dimension(5,0))); // Creating a space between. 
The actual size will be defined by you
myFlow.add(griddy2); // The other element with the btn btn

那应该会达成协议;)

于 2016-01-18T16:02:18.150 回答