는 I 근처가 아니라 내부setLabelFor에 의해 레이블에 연결되는 구성 요소의 레이블 StringProperty (JavaFX)를 가져 오는 방법은 무엇입니까?
@Override
public Control setLabel(Label label) {
label.setLabelFor(this);
return this;
}
@Override
public Label getLabel() {
return (Label) this.queryAccessibleAttribute(AccessibleAttribute.LABELED_BY);
}
라벨 제어를위한 내부 만족하지 구현 제어하지만, 제어 기준이있다.
내가 setLabel을 호출하기 전에 일부 속성에서 향후 레이블의 텍스트를 바인딩해야합니다. 이 같은 것
someStringProperty.bind (control.labelTextProperty());
어떻게 하시겠습니까?
문제를 명확히하려고 노력하겠습니다.
레이블의 경우 labelForProperty() 속성이 있으므로 바인딩하기 전에 setLabelFor 메서드가 호출됩니다. 그러나 TextField와 같은 Control의 경우 textPropertyForConnectedLabel과 같은 속성을 찾을 수 없으며 바인딩은 이후에만 (this.queryAccessibleAttribute (AccessibleAttribute.LABELED_BY)가 null이 아님) 후에 만 가능합니다.
그리고 당신은 [javadoc 내에서] 올바른 속성 이름 (https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/Labeled.html를 찾아 볼 수 없었다 #textProperty) 또는 IDE의 자동 완성 기능에서 ??? – fabian
흠 .. 어쩌면 나는 정확하게 질문을하지 않았다. setLabel을 호출하기 전에 queryAccessibleAttribute에 의한 getLabel은 null을 리턴합니다. – DmitriyAntonov
질문을 명확히 해 주시겠습니까? 'setLabel'에서 바인딩을 수행하겠습니까? 이 경우 레이블은 매개 변수로 있습니다. 또는? 개인적으로 나는 우리가 어떤 질문에 대답해야하는지 정말로 이해하지 못한다 : – DVarga