我有一個Flowpanel一些列表框和標籤在它:GWT - 我flowpanel一個html文件的結構
private ListBox lbStartHour = new ListBox();
private ListBox lbStartMin = new ListBox();
private ListBox lbPauseMin = new ListBox();
private ListBox lbEndHour = new ListBox();
private ListBox lbEndMin = new ListBox();
private DateBox dbxDate = new DateBox();
private Button OK = new Button();
private Label lblError = new Label();
private Label lblStart = new Label();
private Label lblPause = new Label();
private Label lblEnd = new Label();
private Label lblHour = new Label();
private Label lblMin = new Label();
private Label lblDate = new Label();
flowpanel.add(lblHour);
lblHour.setText("Stunden: ");
flowpanel.add(lblMin);
lblMin.setText("Minuten: ");
flowpanel.add(lbStartHour);
flowpanel.add(lbStartMin);
flowpanel.add(lbPauseMin);
flowpanel.add(lbEndHour);
flowpanel.add(lbEndMin);
flowpanel.add(dbxDate);
dbxDate.setFormat(new DateBox.DefaultFormat(DateTimeFormat.getFormat("dd/MM/yyyy")));
flowpanel.add(OK);
OK.setText("Buchen");
flowpanel.add(lblError);
lblError.setText("");
flowpanel.add(lblDate);
lblDate.setText("Datum: ");
flowpanel.add(lblStart);
lblStart.setText("Beginn: ");
flowpanel.add(lblPause);
lblPause.setText("Pause: ");
flowpanel.add(lblEnd);
lblEnd.setText("Ende: ");
然後,我有一定的結構,這樣一個.html文件:
<table id="mainTable" style="padding-bottom: 50px">
<tr>
<td></td>
<td id="lblHour"></td>
<td id="lblMin"></td>
</tr>
<tr>
<td id="lblStart"></td>
<td id="lbStartHour"></td>
<td id="lbStartMin"></td>
</tr>
<tr>
<td id="lblPause"></td>
<td></td>
<td id="lbPauseMin"></td>
</tr>
<tr>
<td id="lblEnd"></td>
<td id="lbEndHour"></td>
<td id="lbEndMin"></td>
</tr>
<tr>
<td id="lblDate"></td>
<td id="dbxDate"></td>
<td></td>
<td id="OK"></td>
</tr>
<tr>
<td id="timeBx"></td>
</tr>
<tr>
<td id="error" colspan="5"></td>
</tr>
</table>
在我的rootpanel中,我只能使用RootPanel.get("lblHour").add(lblHour);
將它「綁定」到我的java代碼中,但我怎樣才能使我的FlowPanel完全相同?
你正在以一種困難的方式解決這個問題。你應該看看GWT的UiBinder功能 - https://developers.google.com/web-toolkit/doc/latest/DevGuideUiBinder – SSR 2013-03-26 13:54:36