첫째, 미안하지만 영어를 잘 못해요. 둘째, 격자판에있는 노드에 문제가 있습니다. 사실, 초점이 왼쪽 상단에있는 첫 번째 사람에 의해 잡히면 탭 키를 누르면 오른쪽에있는 다른 사람이 초점을 잡지 않습니다. 사람들은이 문제를 해결하기 위해 traversalEngine 추상 클래스를 사용하도록 요청합니다. 그럼에도 불구하고 엔진 객체를 구현하려고 할 때 웹의 모든 곳에 표시되는 매개 변수를 입력하면 작동하지 않습니다.
TraversalEngine engine = new TraversalEngine(gridPane, false) {
매개 변수를 제거하도록 요청합니다. 그렇게하면 trav 메서드에 액세스 할 수 없습니다. 실제로 나타나고 구현할 수있는 것은 getRoot 메서드입니다.
TraversalEngine engine = new TraversalEngine() {
@Override
protected Parent getRoot() {
// TODO Auto-generated method stub
return null;
}
}
이 문제를 해결하기 위해 만들 수있는 것이 있습니까?
도와 주셔서 감사합니다
Vinz
부모 노드에 초점을 맞추는 순회 순서는 자식 목록에서 발생하는 순서입니다. 모든 자식에 포커스 가능한 노드가 하나만 있다고 가정하면 자식을 한 줄씩 추가하거나 자식을 재정렬 할 수 있습니다.
물론 이것은 프로그래밍 방식으로 수행 할 수 있지만 처음부터 올바른 순서로 자식을 추가하는 것이 더 효율적일 것입니다.
public static int getColumnIndex(Node n) {
Integer i = GridPane.getColumnIndex(n);
return i == null ? 0 : i;
}
public static int getRowIndex(Node n) {
Integer i = GridPane.getRowIndex(n);
return i == null ? 0 : i;
}
grid.getChildren().sort(Comparator.comparingInt(ContainingClass::getRowIndex).thenComparingInt(ContainingClass::getColumnIndex));
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다