我正在尝试显示一个包含复选框列表的HBox.例:
HBox container = new HBox(); for (Weekday day: Weekday.values() ) { container.getChildren().add( new CheckBox( day.getName() ) ); }
然而,这显示了所有在一行的日子,如:
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
窗口不够大,无法在一行显示所有窗口,因此我得到一个水平滚动条.我需要的是显示两行的日子,例如:
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
我试过container.setPrefWidth()
但它只是让它显示Su.., Mo..
截断文本而不是将它们移动到下一行.
您应该尝试使用FlowPane.我试了一下,得到了你一直在寻找的结果.
HBox布局窗格提供了在一行中排列一系列节点的简便方法
...
FlowPane布局窗格中的节点将连续布局并包装在窗格的边界集中.节点可以垂直(以列为单位)或水平(以行为单位)流动.垂直流窗格包裹在窗格的高度边界处.水平流窗格包裹在窗格的宽度边界处.
来源:http://docs.oracle.com/javafx/2/layout/builtin_layouts.htm#CHDGHCDG (这是一个有用的读物)