gpt4 book ai didi

javafx - 如何调整 WorldWind 面板的大小?

转载 作者:行者123 更新时间:2023-12-03 02:30:35 26 4
gpt4 key购买 nike

我想将 WorldWindowGLJPanel 放入 Pane 中,并且希望使其可调整大小,但我不能,即使我调用 resizesetSize 方法。

这是我正在做的事情:

wwd = new WorldWindowGLJPanel();
wwd.setPreferredSize(new java.awt.Dimension(300, 300));
wwd.setModel(new BasicModel());

swingNode = new SwingNode();
swingNode.setContent(wwd);

wwdPane = new Pane();
wwdPane.getChildren().add(swingNode);

然后我使用这个wwdPane来显示世界风。

我希望我的世界风面板具有包含它的 Pane 的大小,并且我希望使这个世界风面板可调整大小。

我考虑过使用 setSize(PaneDimenson) 为我的 paneworld Wind panel 提供大小,然后绑定(bind)我的 worldwindpanel 与 Pane 的大小,但 setSize 函数不起作用

编辑:我找到了一种替代解决方案,不使用 Pane ,而是直接使用 swingNode,调整大小现在是自动的。但如果您想使用 Pane ,仍然存在问题,并且您必须使用组。

最佳答案

setSize 正在工作,请尝试以下代码:

scene.widthProperty().addListener(new ChangeListener<Number>() {
@Override public void changed( ObservableValue<? extends Number> o, Number b, Number a ) {
Platform.runLater(new Runnable() {
public void run() {
wwd.setSize((int)(a.intValue()*0.5), wwd.getHeight());
}
});

或者使用 Java8

scene.widthProperty().addListener((o,b,a)->Platform.runLater(()->
wwd.setSize((int)(a.intValue()*0.5), wwd.getHeight())));

但是我无法在示例代码中进行调整大小工作,因为 SwingNode 不知何故弄乱了调整大小,我认为您应该尝试建议的解决方案 here .

关于javafx - 如何调整 WorldWind 面板的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29947226/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com