Den Effekt von satiniertem Glas in JavaFX?
Mache ich eine iOS7-Themen JavaFX2/FXML-Projekt und ich Frage mich, wie ich könnte, machen Sie ein Rechteck-Objekt haben, ein iOS7-like Effekt von satiniertem Glas.
Ich würde es auch gerne haben einen kleinen Schatten. Dies ist schwierig, da Sie möglicherweise in der Lage, um zu sehen, Schatten hinter der semi-transparenten Objekts. Ich möchte nur, dass es gegenwärtig um die Kanten.
Ist das möglich? Hier ist ein Bild zeigt die gewünschte Wirkung (nicht einschließlich die kleine drop-shadow):
UPDATE: Hier eine Fortsetzung des Problems. Das wird toll Aussehen :D.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beispiellösung
Führen Sie das Programm unten und scrollen oder wischen Sie nach oben, zeigen die Glasscheibe.
Der Zweck des Programms ist nur um eine Probe der beteiligten Techniken nicht zu handeln, als eine Allgemeine Bibliothek für frost-Effekt.
Quelle Bild
Speichern Sie das Bild parallel zu den Java-Quelltext als Datei mit dem Namen
ios-screenshot.png
und haben Ihr build-system kopieren Sie es in das Ziel-Verzeichnis für die binäre Ausgabe der bauen.Antworten auf weitere Fragen
Den Beispielcode oben geschrieben ist, gegen JDK 8. Portierung zurück zu JDK 7 durch den Austausch der lambda-Anrufe mit anonymen inneren Klassen ist ziemlich trivial.
Im Allgemeinen, Java 7 ist ziemlich datiert für JavaFX zu arbeiten. Ich rate Upgrade an Ihrer frühesten Bequemlichkeit der Arbeit mit einem Java-8 minimale version.
Bequemer Konstruktoren für die meisten Eltern-Knoten ist ein Java-8-feature. Sie können ganz einfach konvertieren Sie die Java-8-format:
Java 7:
Nicht direkt, können Sie erstellen eine neue Frage für, die.
Update: Verwandte Fragen
Benutzer erstellt: JavaFX-Effekt auf den hintergrund zu ermöglichen, die matt-Effekt anwenden, um ein Fenster über einen desktop-hintergrund.
Einem anderen Benutzer erstellt: Wie erstelle ich eine JavaFX-transparente Bühne mit Schatten nur auf der Grenze? Anwendung eines halo-Schatten-Effekt, um dieses Fenster.