Javafx 2 切换复选框文本和组件

Javafx 2 切换复选框文本和组件,javafx-2,javafx,javafx-8,Javafx 2,Javafx,Javafx 8,我想创建复选框,文本在左侧,复选框组件在右侧。我怎样才能改变他们的位置 CheckBox cb = new CheckBox("Show on Startup"); 可能有更简单的方法,但您可以使用标签并在HBox中使用复选框将其包装: HBox box = new HBox(); CheckBox cb = new CheckBox(); Label text = new Label("Show on Startup"); box.getChildren().addAll(text, cb)

我想创建复选框,文本在左侧,复选框组件在右侧。我怎样才能改变他们的位置

CheckBox cb = new CheckBox("Show on Startup");

可能有更简单的方法,但您可以使用标签并在HBox中使用复选框将其包装:

HBox box = new HBox();
CheckBox cb = new CheckBox();
Label text = new Label("Show on Startup");
box.getChildren().addAll(text, cb);
box.setSpacing(5);

如果复选框像其他一些基于标签的控件一样将框视为其“内容”,那就太好了。然后可以将contentDisplayProperty设置为ContentDisplay.RIGHT以实现此目的。一个很好的副作用是,我们可以使用setGraphic()调用更改长方体的呈现


在我的发行版(1.8 EA b129)中,复选框不能以这种方式工作。

在JavaFX 8中,您可以这样做:

Label lb = new Label("left check");
lb.setGraphic(new CheckBox());
lb.setContentDisplay(ContentDisplay.RIGHT); //You can choose RIGHT,LEFT,TOP,BOTTOM

更短:
HBox-box=新的HBox(5.0,新标签(“启动时显示”),cb)