围绕一个按钮文本使用偏移(Centering Text on a Button with Offse

2019-10-29 13:50发布

我有多种装载有图像的ToggleButtons。 按钮尺寸由图像尺寸determinated和按钮本身是由JavaCode创建。 几个按钮有图标(图标仅仅是所加载的图像的一部分)上的左侧或右侧。

我怎样才能通过一定值的文本移动到左边或右边,所以我可以再次使用,但图标的偏移中心的文本? 我不介意传递图标作为参数的宽度,但我不能找到任何移动文本进行了一定的。

按钮从绿色图像创建的,右边的图标是它的一部分; 总宽度300,图标正在100; 文本应居中,以剩余的200。语言设置原因文本本身不能成为其中的一部分。

Answer 1:

您可以按照其次设置按钮的样式:

// top right bottom left
btn.setStyle("-fx-padding: 5px 5px 5px 5px;");

编辑:
您可以使用与HBox:

HBox hbox = new HBox();
// the text of the "button"
Label lbl_txt = new Label("Text");
// the icon of the "button", i am using Labels for icon(with css)
Label lbl_ico = new Label("ico");
hbox.getChildren().addAll(lbl_txt, lbl_ico);
hbox.setOnMouseClicked(new EventHandler<MouseEvent>() {
    @Override
    public void handle(MouseEvent t) {
        // alternative to Button click
    }
});

其它一切皆与CSS样式。 ;-)



文章来源: Centering Text on a Button with Offset