/ / Ein GWT PopupPanel mit Glas zum Ein- und Ausblenden bekommen - java, gwt

Ein GWT PopupPanel mit Glas zum Ein- und Ausblenden bekommen - Java, gwt

Ich würde gerne verblassen ein PopupPanel in meine Seite. Ich kann das bekommen PopupPanel element und animiere die opazität selbst, aber ich habe keinen zugriff auf das glaselement. dies ist nicht wirklich ein technisches problem, sondern eine einschränkung (würde ich sagen) auf was die PopupPanel wählt aussetzen.

Kennt jemand einen Workaround oder eine Alternative? Vielen Dank!

Antworten:

1 für die Antwort № 1

Lösung 1 - Zurückgestellte Bindungen

Probe - https://developers.google.com/web-toolkit/doc/latest/DevGuideCodingBasicsDeferred#example Theorie - https://code.google.com/p/google-web-toolkit/wiki/DeferredBindingsForJRE

Lösung 2 - Hacking mit Java Classpath

Wenn Java auf doppelte Java-Dateien stößtPakethierarchie wählt es das aus dem Jar aus, das den anderen im Klassenpfad voraus ist. Wir verwenden diese Technik zum Überschreiben von Klassen gelegentlich, um zu ändern, was GWT-Klassen verfügbar machen möchten. Wir kopieren die PopupPanel Java-Dateien in unserer Codebasis im genauen Paket als GWT, d.h. com.google.gwt.user.client.ui.

Wir müssen sicherstellen, dass GWT Compiler unsere Version von sieht PopupPanel im Klassenpfad vor gwt-user.jar. Dies bedeutet, dass GWT Compiler unsere Version und nicht die von GWT aufnimmt.

Hinweis - Sie müssen sicherstellen, dass die PopupPanel-Java-Dateien mit jeder GWT-Version synchronisiert werden.


2 für die Antwort № 2

Grundsätzlich sehen alle Glasscheiben so aus

<div class="gwt-PopupPanelGlass" style="..."></div>

Wenn Sie dieses Element also wirklich brauchen, um es zu animieren, können Sie über jsni Folgendes tun:

elements = document.getElementsByClassName("gwt-PopupPanelGlass")

und ändern Sie danach den Elementstil wie gewünscht. Dies ist jedoch eine Art Problemumgehung, die Sie in verschiedenen Browsern testen müssen.