将监听器添加到使用TabPaneBuilder创建的TabPane?

时间:2012-09-04 18:25:10

标签: java javafx-2

我有以下代码:

TabPaneBuilder.create()
    .tabs(
        TabBuilder.create()
            .text("Main")
            .closable(false)
            .build(),
        TabBuilder.create()
            .text("Preview")
            .content(createPreviewSplitMenu())
            .closable(false)
            .build()
        )
   .build()

是否可以在此处添加侦听器,以便在选择“预览”选项卡时完成某些操作?如果是这样,我似乎无法找到它,我已经查看了API。

我一般不会问如何使用TabPaneBuilder。

感谢。

编辑:如果我要求的是不可能的话,也会想要最简单的常规方法。

Edit2:我想要做的是在选中时重绘“预览”标签的内容。

1 个答案:

答案 0 :(得分:1)

您需要将监听器添加到TabBuilder!

(首先需要给它起个名字,所以你以后可以参考:)

TabPaneBuilder.create()
.tabs(
    TabBuilder.create()
        .text("Main")
        .closable(false)
        .build(),

//New code coming through

    previewTab = TabBuilder.create()
        .text("Preview")
        .content(createPreviewSplitMenu())
        .closable(false)

        .onSelectionChanged(new EventHandler<Event>() {
        public void handle(Event evt) {
          if (previewTab.isSelected()) {
            //code to update the tab
          }
        }
      })

      .build()
    )
.build()