【问题标题】:Layout of elements inside of HBox for JavaFX用于 JavaFX 的 HBox 内的元素布局
【发布时间】:2016-07-01 03:27:16
【问题描述】:

我想遍历列表的每个对象。对于每个条目,我想创建一个如下所示的 GUI 对象:

  • 左侧的复选框
  • 中间的图像
  • (稍后)左侧的标签

我的问题是,每个标签都有不同的长度,如果不是所有图片都在同一行(垂直方向),它看起来会很奇怪。 javacss 是否有可能将 ImageVew 对齐在 HBox 的中心?
imageView.setLayoutX(filterBox.getWidth()/2); 不幸地没有做到这一点。并且似乎不存在 -fx-align: right;-fx-float: right;
我包括了我目前所拥有的。

VBox filtersBox = new VBox();
HBox filterBox;
for(Filter filter : filters.getFilters()){
     if(!filter.isComplex()){
          filterBox = new HBox();
          filterBox.getStyleClass().add("filter");
          ImageView imageView = new ImageView();
          [image view stuff]
          final CheckBox cbox = new CheckBox(filter.getName().toString());
          filterBox.getChildren().addAll(cbox, imageView);
          filtersBox.getChildren().addAll(filterBox);
     }
}

【问题讨论】:

    标签: java css alignment javafx-8


    【解决方案1】:

    据我所知,这是不可能的。

    不过,我看到了两种实现这种布局的方法:

    1. 让所有复选框具有相同(恒定)的首选宽度。这样,您的图像视图应该对齐。
    2. 使用GridPane,并添加行而不是HBoxes

    【讨论】:

      猜你喜欢
      • 2018-09-29
      • 2012-06-08
      • 2014-03-29
      • 2020-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-20
      • 2017-10-06
      相关资源
      最近更新 更多