Tôi đang cố gắng để tạo ra một khung tiêu đề biên giới trong GWT, mà kết quả trong việc này:bảng khung Với tiêu đề cho GWT (sử dụng fieldset và LEGEND html tags)
Điều này có thể được thực hiện bằng HTML fieldset và các thẻ chú giải, chẳng hạn như
<fieldset>
<legend>Connection parameters</legend>
... the rest ...
</fieldset>
Tôi muốn tạo tiện ích tùy chỉnh trong GWT thực hiện điều đó. Tôi quản lý để làm điều đó, nhưng vấn đề là các sự kiện xảy ra bên trong các widget (nút bấm vv) không bị sa thải mặc dù tôi đã thêm xử lý.
thực hiện của tôi về widget như sau:
public class TitledPanel extends Widget {
private Element legend;
private Widget content = null;
public TitledPanel() {
Element fieldset = DOM.createFieldSet();
legend = DOM.createLegend();
DOM.appendChild(fieldset, legend);
setElement(fieldset);
}
public TitledPanel(String title) {
this();
setTitle(title);
}
@Override
public String getTitle() {
return DOM.getInnerHTML(legend);
}
@Override
public void setTitle(String html) {
DOM.setInnerHTML(legend, html);
}
public Widget getContent() {
return content;
}
public void setContent(Widget content) {
if (this.content != null) {
DOM.removeChild(getElement(), this.content.getElement());
}
this.content = content;
DOM.appendChild(getElement(), content.getElement());
}
}
Tôi có cần phải mở rộng Composite, hoặc cần phải tự định tuyến lại các sự kiện, hoặc là có cách nào khác?