Używasz najnowszej JDK 8 Early Access? Jeśli tak, zobacz ten raport o błędzie, który zgłosiłem: http://javafx-jira.kenai.com/browse/RT-29018
Zasadniczo w najnowszej wersji kompilacji wczesnego dostępu dokonano pewnych zmian w skinach i css. Spowodowało to ujawnienie ukrytego błędu w węzłach potomnych, które są brudniejsze niż węzły nadrzędne, ale oba wymagają odświeżenia w tym samym impulsie, brudny poziom rodzica kończy się nadpisując brudny poziom węzłów potomnych.
Powoduje to, że postęp nie jest wyświetlany, a w rzeczywistości dla mnie progressBar
stał się całkowicie niewidoczny, jak tylko updateProgress
został wywołany z zadania. Mają łatkę na miejscu, nie wiem, kiedy to się skończy.
obejście, albo użyć jdk7 czekając na patcha, czy można zrobić to, co zrobiłem i zastosować ten ze starego CSS do swojego arkusza stylów CSS:
/*hack to get progress bar working. From: JDK7u17 jfxrt.jar!/com/sun/javafx/scene/control/skin/caspian/caspian.css */
/*******************************************************************************
* *
* ProgressBar *
* *
******************************************************************************/
.progress-bar {
-fx-skin: "com.sun.javafx.scene.control.skin.ProgressBarSkin";
-fx-background-color:
-fx-box-border,
linear-gradient(to bottom, derive(-fx-color,30%) 5%, derive(-fx-color,-17%));
-fx-background-insets: 0, 1;
-fx-indeterminate-bar-length: 60;
-fx-indeterminate-bar-escape: true;
-fx-indeterminate-bar-flip: true;
-fx-indeterminate-bar-animation-time: 2;
-fx-focus-traversable: true;
}
.progress-bar .bar {
-fx-background-color:
-fx-box-border,
linear-gradient(to bottom, derive(-fx-accent,95%), derive(-fx-accent,10%)),
linear-gradient(to bottom, derive(-fx-accent,38%), -fx-accent);
-fx-background-insets: 0, 1, 2;
-fx-padding: 0.416667em; /* 5 */
}
.progress-bar:indeterminate .bar {
-fx-background-color: linear-gradient(to left, transparent, -fx-accent);
}
.progress-bar .track {
-fx-background-color:
-fx-box-border,
linear-gradient(to bottom, derive(-fx-color,-15%), derive(-fx-color,2.2%) 20%, derive(-fx-color,60%));
-fx-background-insets: 0, 1;
}
.progress-bar:disabled {
-fx-opacity: 1.0
}
I skopiowany kod i działa po prostu doskonale. Czy w jakiś sposób go zinterpretowałem? Używam go w podklasie i mam dostęp do paska postępu w sposób statyczny. czy to może sprawić kłopoty? Im using 7v17 btw – Chromos
edit: gui jest zaprojektowany w arkuszu fxml. – Chromos
Czy łatka jest już dostępna @jewelsea? –