Ich wollte nur wissen, ob es Java-Bibliotheken gibt, die reibungslose Übergänge zwischen Java Swing Containern ermöglichen.
Angenommen, ich habe eine Java-GUI-Anwendung mit einem einzelnen JFrame. Basierend auf Benutzeraktionen möchte ich das in meinem JFrame enthaltene JPanel ändern. Nun, das kann ich tun. Diese Änderung ist jedoch augenblicklich. Was ich tun möchte, ist eine langsame Transition / Animation, so dass es nicht zu schwer für die User-Wahrnehmung ist.
Konkretes Beispiel:
Sagen Sie, der JFrame, den ich habe, ist frame
mit 2 Buttons und ich habe zwei JPanel, panel1
und panel2
. Je nachdem, auf welche Schaltfläche der Benutzer geklickt hat, würde ich frame
durch panel1
oder panel2
ersetzen. Ich möchte jedoch, dass diese Änderung langsam / animiert wird (wie immer Sie es nennen), ein fade-in
Effekt per se. Also meine Frage ist
Gibt es eine Java-Bibliothek, die solche Übergänge zulässt?
Wenn nicht, gibt es andere Desktop-Entwicklungssprachen, die ich für einen solchen Übergang verwenden kann. Ich kenne bereits Javascript-Frameworks wie JQuery, die dies ermöglichen. Aber ich suche nach Desktop-Entwicklung (wenn nicht Java, dann ist alles andere auch in Ordnung).
So ähnlich?
Ich hatte das gleiche Bedürfnis: sanfte Übergänge und Animationen von Komponenten, Panels und Bildschirmen in meiner App, um eine ausgefallene Benutzeroberfläche zu erstellen. Seit ich einmal eine Animationsengine ( Universal Tween Engine ) für Java gemacht habe, habe ich schnell ein Setup erstellt sehr kleine und einfach zu bedienende Bibliothek zum Erstellen solcher Animationen in Swing-UIs, die SlidingLayout-Bibliothek .
Wenn Sie das suchen, gibt es ein eigenes Forum, falls Sie Hilfe benötigen, um die lib in Ihrem Projekt einzurichten.
Ich kann mir zwei Animationsbibliotheken vorstellen, die in der Lage sind, den gewünschten Effekt zu erzeugen, aber Sie müssen dafür sorgen, dass der Übergang funktioniert
Sie sollten auch auschecken:
Für eine mögliche Implementierung
Ich würde auch vorschlagen, Ссылка nach weiteren Einblicken zu suchen