首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在TabPane中调用selectionModel().select()时发生NPE

在TabPane中调用selectionModel().select()时发生NPE
EN

Stack Overflow用户
提问于 2012-09-18 20:59:23
回答 1查看 258关注 0票数 1

下面是我的代码:

代码语言:javascript
复制
public class TabApp implements Initializable {

    @FXML
    Button newButton;
    @FXML
    TabPane tabPane = new TabPane();
    public Tab newTab;
    private SingleSelectionModel<Tab> selectionModel;
    public int zQueryTabCount = 2;

    @FXML
    public void handleNewButton(ActionEvent event) {
        System.out.println("new button is pressed");

        newTab = new Tab();

        selectionModel.select(newTab);

        newTab.setId("Query " + zQueryTabCount);

        newTab.setText("Query " + zQueryTabCount);

        tabPane.getTabs().add(tabPane.getTabs().size(), newTab);

        tabPane.getTabs().get(0).setClosable(false);

        newTab.setClosable(true);

        if (zQueryTabCount < 2) {

            tabPane.getTabs().get(0).setClosable(false);

        }

        zQueryTabCount++;

    }
}

我在selectionModel.select(newTab);行买到了NullPointerException

我怎么解决它呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-18 23:28:01

您的selectionModel变量未初始化,也未附加到TabPane。

请改用next call:

代码语言:javascript
复制
[...]
tabPane.getTabs().add(tabPane.getTabs().size(), newTab);

// should be called after tab has been added to TabPane
tabPane.getSelectionModel().select(newTab);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12477551

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档