Eva*_*eil 13 resize javafx worldwind
我想把它WorldWindowGLJPanel放入一个窗格,我想让它可以调整大小,但我不能,即使我打电话resize或setSize方法.
这是我正在做的事情:
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);
Run Code Online (Sandbox Code Playgroud)
然后我用它wwdPane来显示World Wind.
我希望我world wind panel的窗格大小包含它,我想让它可以world wind panel调整大小.
我想过给大小我world wind panel我的pane了setSize(PaneDimenson),然后我worldwindpanel的大小与我的窗格中结合,但setSize功能不工作.
编辑:我通过不使用窗格找到了替代解决方案,但直接使用swingNode,调整大小现在是自动的.但是如果你想使用一个窗格仍然存在问题,那么你就强迫使用一个组.
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());
}
});
Run Code Online (Sandbox Code Playgroud)
或使用Java8
scene.widthProperty().addListener((o,b,a)->Platform.runLater(()->
wwd.setSize((int)(a.intValue()*0.5), wwd.getHeight())));
Run Code Online (Sandbox Code Playgroud)
但我无法在示例代码中进行调整大小工作,因为 SwingNode 不知何故弄乱了调整大小,我认为您应该尝试此处建议的解决方案。
| 归档时间: |
|
| 查看次数: |
843 次 |
| 最近记录: |