2017-01-10 58 views
1

當我使用BorderPane和中心部分提出的佈局,它涵蓋其他地區,我怎麼能防止覆蓋其他份的正borderPane enter image description hereBorderPane中心重疊的其他部分

的中心部分,你看到的,表格覆蓋了BorderPane的右側部分。 我把表格放在窗格中。

+0

小心與我們分享場景圖的整體結構?是否應用了轉換?根據場景大小是否設置了不允許場景適當佈置的最小尺寸? – fabian

回答

3

BorderPane文檔:

BorderPane不夾在默認情況下它的內容,所以它可能是兒童邊界可能它自己的邊界之外擴展,如果一個孩子的最小尺寸防止其內它適合空間。

爲了防止溢出,有些選項是:

  1. ,使其不具有最小尺寸你可以編寫你的子節點。
  2. 您可以確保所有孩子的最小大小總和至少等於邊框窗格的最小大小。
  3. 您可以在子節點上明確設置clip。有關演示,請參閱:JavaFX Pane Clipping

    final Rectangle outputClip = new Rectangle(); 
    childNode.setClip(outputClip); 
    
    childNode.layoutBoundsProperty().addListener((ov, oldValue, newValue) -> { 
        outputClip.setWidth(newValue.getWidth()); 
        outputClip.setHeight(newValue.getHeight()); 
    });  
    
  4. 您設置的子節點到邊界窗格確定顯示在上面,因此,如果所有節點是不透明的,你可以設置中央窗格中第一和兩側窗格將塗過任何溢出的順序。

+0

1-您可以編寫您的子節點,以便它沒有最小尺寸。 它的工作原理,謝謝:) – Maysara