2014-12-12 4 views
1

GridPane에서 테두리까지의 거리를 설정하는 방법을 찾을 수 없습니다. 이제 텍스트는 테두리가 멈춘 직후 시작됩니다. 이는 디자인에 좋지 않습니다. 모든 자식에게 패딩을 줄 수는 있지만,이 작업을 수행하는 데 더 짧은 방법이 있어야한다고 생각했습니다 (GridPane의 일부 속성).GridPane에서 테두리까지의 거리를 설정하는 방법은 무엇입니까?

불행히도 온라인에서는이 위치를 찾을 수 없었습니다. 나는 FXML이나 CSS (선호하는 CSS)를 사용하는 솔루션을 선호한다. 그러나 이것이 약간의 자바 코드로 수행되어야한다면, 문제가되지 않는다. #someGridPane { -fx-border-insets: 5; }하지만,이 세트는 경계 밖에있는 (그리고 나는 내부를 원하는) 다음 CSS의 GridPane의 여백을 설정

  • :

    은 내가 이미 시도했다.

  • 모든 자식 요소에 패딩을 설정했는데, 이는 예상했던 것보다 효율적이지 않습니다.

그래서 질문입니다 : GridPane에서 테두리까지의 거리를 설정하는 방법은 무엇입니까?

참고 :이 솔루션은 이미 어딘가에 온라인 상태 인 경우 내가

  • JavaFX8
  • 을 사용하고

    1. 알려 주시기 바랍니다. (지금 당분간 검색했습니다.)
    +0

    텍스트에 일부 인서트를 설정하십시오. 텍스트가 영역이 아닌 노드로 표시되는 경우, 텍스트를 여러 종류의 창으로 묶고 창에 인세 트를 설정하십시오. –

    +0

    Thanks James_D 님의 의견을 기다리고 있습니다! 국경에 자동 패딩을 설정할 수 있다는 것이 예를 들어 큰 재산이 될 수 있다는 견해를 공유하십니까? 'GridPane'? – bashoogzaad

    답변

    2

    그리드 패널의 내용에 따라 약간 바꿀 수 있습니다.

    GridPane > Text {-fx-translate-x : 5;} 
    GridPane > Label {-fx-label-padding: 0 0 0 5;} 
    

    물론 스타일 클래스 이름을 추가해도 좋습니다.

    +0

    답변 해 주셔서 감사합니다! 내가 바라는 바는 아니지만, GridPane에 그러한 속성이 없다면, 아마도 이것이 최선의 방법 일 것입니다. – bashoogzaad

    +0

    아직 javafx CSS에 익숙하지 않은데 어떻게해야합니까? 인라인 스타일로 적용하면 'CSS 오류 파싱'* {GridPane> Text {-fx-translate-x : 5;} GridPane> 레이블 {-fx-label-padding : 0 0 0 5 ;}} : [1,11]에있는 COLON이 필요합니다. – Xerus

    +0

    @Xerus 인라인 코드는 아니지만 스타일 시트에 들어갑니다. 인라인으로'text.setStyle ("- fx-translate-x : 5;")와 같이하면됩니다. – brian

    0

    는 더 간단하고 자연 솔루션이있다 :

    GridPane { 
        -fx-padding: 5; 
        -fx-hgap: 5; 
        -fx-vgap: 5; 
    } 
    

    그것은 않습니다 GridPane.setHgap(5) 등,하지만 CSS로 사용하는 것과 같습니다.