Hallo allerseits,
ich spiele gerade ein wenig mit dem GWT rum und komm bei einem Fehler (besser Exception) nicht mehr weiter.
Ich habe eine Tabelle erzeugt (Grid(5,5)) und der Tabelle einen ClickListener hinzugefügt. Dieser soll bei der geklickten Zelle dann ein "x" setzen. Klappt alles wunderbar soweit. Nun öffne ich gleichzeitig eine DialogBox mit einem Button. Die Box hat noch keine Funktion. Wenn ich auf den Button "Test" klicke, dann schließt sich die DialogBox wieder. Das klappt beim ersten Mal auch ohne Probleme. Wenn ich dann zum 2. Mal eine Zelle anklicke, öffnet sich die DialogBox und er zeigt mir in deiner Konsole folgende Meldung:
"Uncaught Exception escaped"
Hab dann ein wenig nachgeschaut und herausgefunden, dass folgende Exception aufgetreten ist:
Caused by: java.lang.IllegalStateException: SimplePanel can only contain one child widget
at com.google.gwt.user.client.ui.SimplePanel.add(SimplePanel.java:67)
Jetzt komm ich nicht weiter. Hab keine Ahnung was das bedeutet und wie ich das behebe.
Hier mal mein Code:
Für jede Hilfe bin ich dankbar.
Liebe Grüße
MayYes
ich spiele gerade ein wenig mit dem GWT rum und komm bei einem Fehler (besser Exception) nicht mehr weiter.
Ich habe eine Tabelle erzeugt (Grid(5,5)) und der Tabelle einen ClickListener hinzugefügt. Dieser soll bei der geklickten Zelle dann ein "x" setzen. Klappt alles wunderbar soweit. Nun öffne ich gleichzeitig eine DialogBox mit einem Button. Die Box hat noch keine Funktion. Wenn ich auf den Button "Test" klicke, dann schließt sich die DialogBox wieder. Das klappt beim ersten Mal auch ohne Probleme. Wenn ich dann zum 2. Mal eine Zelle anklicke, öffnet sich die DialogBox und er zeigt mir in deiner Konsole folgende Meldung:
"Uncaught Exception escaped"
Hab dann ein wenig nachgeschaut und herausgefunden, dass folgende Exception aufgetreten ist:
Caused by: java.lang.IllegalStateException: SimplePanel can only contain one child widget
at com.google.gwt.user.client.ui.SimplePanel.add(SimplePanel.java:67)
Jetzt komm ich nicht weiter. Hab keine Ahnung was das bedeutet und wie ich das behebe.
Hier mal mein Code:
Java:
package test.client;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.Grid;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
public class TestObjekt implements EntryPoint {
private Grid a = new Grid(5,5);
private Button b = new Button("Test");
private DialogBox c = new DialogBox();
private VerticalPanel d = new VerticalPanel();
public void onModuleLoad() {
RootPanel.get("content").add(createTable());
}
private Widget createTable() {
a.setBorderWidth(2);
a.setCellSpacing(1);
for(int i = 0; i <= 4; i++)
a.getCellFormatter().setWidth(0, i, "128px");
a.addClickHandler(new ClickHandler(){
public void onClick(ClickEvent event) {
createDialogBox(a.getCellForEvent(event).getRowIndex(), a.getCellForEvent(event).getCellIndex());
}
});
return a;
}
private void createDialogBox(int row, int column){
a.setText(row, column, "x");
c.setText("Test DiaBox");
c.setPixelSize(400, 100);
c.center();
d.setPixelSize(400, 100);
d.add(b);
b.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
c.hide();
}
});
c.add(d);
c.show();
}
}
Für jede Hilfe bin ich dankbar.
Liebe Grüße
MayYes
Zuletzt bearbeitet von einem Moderator: