Ich brauche den Titel von smartGWT Windows editierbar sein. Und ich muss es dynamisch machen, weil die Anzahl der Fenster variabel ist.Make GWT Fenster Titel editierbar
I verlief wie folgt:
1) I erstellen eine Liste von Zufalls IDs für die Fenster, wenn sie
private String randomId = "title" + Random.nextInt();
2) I implementiert, ein Verfahren, um das Fenster zu erstellen und geladen werden, ihre Titel
@Override
public final Canvas getCanvas() {
if (window == null) {
window = new Window();
window.setTitle(getTitle(model));
3)
private String getTitle(E model) {
return "<span contenteditable=\"true\" style=\"cursor: text\" id=\"" + randomId + "\">" + model.getName() + "</span>";
}
3) nenne ich ein Verfahren das Fenster, falls zu bearbeiten
geklickt wirdwindow.addDrawHandler(event -> setupTitleEditing(randomId));
4) I, das Verfahren wie folgt implementiert:
private native void setupTitleEditing(String name)/*-{
document.getElementById(name).bind('click', function() {
$(this).attr('contentEditable', true);
}).blur(function() {
$(this).attr('contentEditable', false);
});
}-*/;
Das Element Spanne in Schritt null sein wird betrachten 4) sogar es existiert mit der richtigen ID (Browser Inspector).
Meine Frage ist: Gibt es eine direkte Methode, um das in Java mit GWT-Methoden zu tun? Wenn nicht, was habe ich falsch gemacht?
Ja ist es sehr ärgerlich, dass ich überall klicken muss, bevor der Inhalt bearbeitet werden kann. Jeder hat eine Idee, wie man vorgeht, um diesen Fehler zu entfernen? –