2013-04-22 3 views
0

이미지가로드 된 다양한 ToggleButton이 있습니다. 단추 크기는 이미지 크기에 의해 결정되며 단추 자체는 JavaCode에 의해 작성됩니다. 버튼 몇 개는 왼쪽 또는 오른쪽에있는 아이콘 (아이콘은로드 된 이미지의 일부 임)이 있습니다.오프셋이있는 단추의 텍스트 가운데 맞추기

텍스트를 특정 값만큼 왼쪽이나 오른쪽으로 움직여서 텍스트를 가운데에 맞출 수는 있지만 아이콘의 오프셋을 사용하면 어떻게됩니까? 난 매개 변수로 아이콘의 너비를 전달 상관 없어,하지만 특정 금액에 대한 텍스트를 이동 아무것도 찾을 수 없습니다.

enter image description here

버튼 녹색 화상으로부터 생성되고, 오른쪽 아이콘의 일부이고; 총 너비는 300이고 아이콘은 100을 사용합니다. 텍스트는 나머지 200에 중앙에 위치해야합니다. 언어 설정의 이유로 텍스트 자체가 그림의 일부가 될 수 없습니다.

답변

0

당신은 다음과 같이 버튼의 스타일을 설정할 수 있습니다

// top right bottom left 
btn.setStyle("-fx-padding: 5px 5px 5px 5px;"); 

편집 : 다른

HBox hbox = new HBox(); 
// the text of the "button" 
Label lbl_txt = new Label("Text"); 
// the icon of the "button", i am using Labels for icon(with css) 
Label lbl_ico = new Label("ico"); 
hbox.getChildren().addAll(lbl_txt, lbl_ico); 
hbox.setOnMouseClicked(new EventHandler<MouseEvent>() { 
    @Override 
    public void handle(MouseEvent t) { 
     // alternative to Button click 
    } 
}); 

모든 것은 CSS로 스타일링됩니다 : 당신은 HBox의를 사용할 수 있습니다
. ;-)

+0

이 버튼은 전체 버튼과 텍스트 (위치 만 오프셋하지 않고 클릭 할 수있는 영역을 상쇄하지 않음)를 오프셋하는 데 유용하지 않습니다. – Zibelas

+0

확인을 클릭해도 나에게 분명하지 않습니다. 어떤 종류의 예 또는 스크린 샷을 제공해 주시겠습니까? – Kalaschni

+0

글쎄,이 마지막 마지막 해결 방법으로 작동 할 수 있지만 이후 더 많은 것입니다 - 텍스트를 배치하는 간단한 무언가를 위해 하나 대신 3 구성 요소를 사용하도록 - 또한 정상적인 단추 동작을 구현해야 할 것이라고 클릭 이벤트 (예 : 토글 버튼에 대한 눌림 상태) – Zibelas

관련 문제