2013-11-15 2 views
3

성능상의 이유로 일부 노드에서 CSS 스타일을 사용하지 않도록 설정하고 싶습니다. 나는 수천 개가 넘고, 실제로는 견고한 배경색으로 채우고 싶기 때문에 CSS는별로 필요하지 않습니다. 그 (것)들에서 모든 작풍 종류를 제거하는 것은 이젠 그만인가? 나는 이것을 시도하고 프로파일 링 한 후에 processCSS()가 여전히 대부분의 CPU 시간을 소비한다는 것을 알아 차렸다.JavaFX 8에서 단일 노드의 CSS 스타일을 비활성화 할 수 있습니까?

더크

본질적으로 그들에 대한 자신의 스핀있어 추가 (내가 아는) 자바 FX 노드의 모든 CSS를 제거 사용자가 단순히 무시 기본 .CSS 파일에 모든 자바 FX 항목 선박 이후 수있는 방법은 없습니다

답변

4

다양한 CSS 파라미터 (기본값은 caspian.css (Javafx 2. *의 경우)이고 Modena.css (Javafx 8.0 +의 경우)입니다. 만들어 질 때 각 노드의 배경색을 프로그래밍 방식으로 변경하여 모든 단일 노드에 대해 전체 .css 파일을로드 할 필요는 없지만 만든 각 노드에 대한 기본 .css로드가 일부 남아 있습니다.

1

아니요, 모든 스타일 클래스를 제거하면 CSS를 사용 중지하기에 충분하지 않습니다. 이 경우 기본 .css 파일이 처리됩니다. 현재 CSS 렌더링과 관련이 없지만 processCss는 노드의 최대 자식 수만큼 복잡 할 수 있기 때문에 시간이 오래 걸립니다. 노드의 자식 수는 사용자가 말했던 것처럼 수천 개가 될 수 있습니다. caspian.css를 오버라이드하여 간단하게 만들 수 있다면 좋습니다.

관련 문제