>Java >java지도 시간 >레이아웃 전에 JavaFX에서 노드 높이를 정확하게 얻는 방법은 무엇입니까?

레이아웃 전에 JavaFX에서 노드 높이를 정확하게 얻는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-27 11:51:12271검색

How to Accurately Get Node Height in JavaFX Before Layout?

JavaFX에서 노드 높이 가져오기

JavaFX에서 노드 높이를 가져오려면 다음 단계를 따라야 합니다.

  1. VBox에 배치할 노드를 생성합니다.
  2. 추가 임시 장면에 추가합니다(스테이지 연결은 없지만 CSS 규칙이 기본 장면과 일치하는 더미 장면일 수 있음).
  3. 각 노드에서(또는 더미에서 applyCss() 및 레이아웃()을 모두 호출합니다.) 장면 루트).
  4. 노드의 레이아웃 경계를 측정합니다.
  5. 레이아웃을 기반으로 실제 장면의 VBox에 노드를 추가합니다. 알고리즘.

설명

JavaFX 레이아웃 계산에는 CSS 스타일 적용 및 레이아웃 패스 실행이 포함됩니다. 이 프로세스는 일반적으로 "펄스"(장면의 더러운 개체에 대한 자동 검사) 중에 발생합니다. 그러나 레이아웃이 발생하기 전에 노드 크기 측정이 필요한 경우 CSS 애플리케이션과 레이아웃 패스를 수동으로 트리거해야 합니다.

대안

대체 접근 방식은 재정의하는 것입니다. 레이아웃 단계 중 하위 노드 조정을 처리하기 위한 상위 노드의layoutChildren() 메서드. 그러나 여기에는 정확한 크기 계산을 위해 ComputePrefHeight()와 같은 다른 메서드를 재정의하는 것이 포함됩니다.

위 내용은 레이아웃 전에 JavaFX에서 노드 높이를 정확하게 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.