2017-05-18 5 views
0

私はJava FXミュージックアプリケーションを構築していますが、JComponentを含むSwingNodeを含むJava FXペインがあります。このコンポーネントの上部と下部は中央のセクションのみを示します。JComponent/SwingNode/Java FXペインのセクションのみを表示する方法

もし私がペインのサイズをコンポーネントより小さくすると、これはコンポーネントの一番上のセクションを表示します。これはTop section of Componentのようになりますが、コンポーネントを上に移動して中央のセクションが見えるようにしたい上部と下部が切り取られているMiddle section of Component

誰でもこれを行う方法を知っていますか? TIA

答えて

0

外部領域を単純にクリップする場合は、ノードをPaneにラップし、ネガティブLayoutXYと適切なMaxSizeを設定します。外側の領域が他の部分と重なっている場合は、クリップが必要な場合があります。たとえば、

Pane viewPort = new Pane(); 
viewPort.getChildren().add(yourSwingNode); 

// Top 200px and bottom 200px of yourSwingNode will be trimed. 
yourSwingNode.setLayoutY(-200.0); 
yourSwingNode.layoutBoundsProperty().addListener((o, ov, nv) -> { 
    viewPort.setMaxHeight(nv.getHeight() - 400.0); 
}); 

// Set a clip for the layout bounds of Pane if you need 
Rectangle clip = new Rectangle(); 
viewPort.layoutBoundsProperty().addListener((o, ov, nv) -> { 
    clip.setWidth(nv.getWidth()); 
    clip.setHeight(nv.getHeight()); 
}); 
viewPort.setClip(clip); 
+0

ありがとうございます! – tnoel999888

関連する問題