繁体   English   中英

JavaFX中滚动条的实现

[英]Implementation of Scrollbar in JavaFX

我的问题是我的 Maven 项目(棋盘游戏)占用了很大的空间,而且由于我的笔记本电脑只有 13 英寸,我看不到顶部和底部。 我尝试了许多在互联网上找到的不同代码行,但没有帮助。 所以我的问题是; 我已经调整了棋盘游戏的大小,但我只能看到 400x400 尺寸内的那个地方。 那么如何添加一个可以通过上下滚动显示整个游戏的滚动条,甚至可能吗?

我试图做一些事情,它被注释掉了。

    Scene scene = this.stage.getScene();
    Parent root = scene.getRoot();
    ((BorderPane) root).setCenter(this.boardView);

    //ScrollPane sp = new ScrollPane();
    //sp.setContent(root);
    //Scene scene = this.stage.getScene(sp, 400, 400); //too many arguments..

    stage.setScene(scene);
    stage.centerOnScreen();
    appController.startGame();

我知道我必须将“sp”放在下面的代码中(这也是我在互联网上找到的解决方案):

Scene scene = new Scene(sp, 400, 400);

但是,当我创建这样的对象时,我怎么能做到呢?

Scene scene = this.stage.getScene();

如何在我的窗口中添加滚动条?

还是有完全不同的方法来做到这一点?

您发布的许多代码实际上没有任何意义。 如果你有

Scene scene = this.stage.getScene();

那么显然

stage.setScene(scene);

完全没有意义。 大部分代码的其余部分也无法理解,至少在没有进一步上下文的情况下是这样。

您的问题的基本答案是您将boardView包装在ScrollPane中,并将ScrollPane (而不是boardView )放置在场景图中,无论您需要什么。 所以像

Scene scene = this.stage.getScene();
Parent root = scene.getRoot();
ScrollPane sp = new ScrollPane();
sp.setContent(this.boardView);
((BorderPane) root).setCenter(sp);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM