添加一个监听器与TabPaneBuilder创建一个TabPane?(Adding a listen

2019-10-17 04:53发布

我有以下代码:

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

是否可以在这里添加一个侦听器,以便选择选项卡“预览”什么时间完成? 如果是这样,我似乎无法找到它,我已经看过了API。

我不问如何做,在一般情况下,使用TabPaneBuilder正当。

谢谢。

编辑:也想最简单的常规方式来做到这一点,如果我所问的是不可能的。

EDIT2:我想要做的就是在选择时有“预览”选项卡中重新绘制的内容。

Answer 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()


文章来源: Adding a listener to a TabPane created with TabPaneBuilder?
标签: java javafx-2