0
- 我创建了一个新的CellTable。
- 重写onBrowserEvent2来处理鼠标事件。
- 向表中添加一个新元素。
不幸的是,事件监听器没有处理添加的元素。它只处理最初的元素。GWT事件不适用于运行时添加的元素
table = new CellTable<Contact>() {
public void onBrowserEvent2(Event event) {
Element tr = Element.as(event.getEventTarget());
boolean gotIt = false;
while (!gotIt && tr != null) {
if (!tr.getTagName().equals("TR")) {
tr = tr.getParentElement();
continue;
}
gotIt = true;
}
if (tr == null)
return;
tr = Element.as(tr.getChild(1));
Element out = DOM.createDiv();
out.setInnerHTML("<a href='xxx'>Edit contact</a> | <a href='xxx'>Add visit plan</a> | <a href='xxx'>New visit</a>");
switch (DOM.eventGetType(event)) {
case Event.ONMOUSEOVER:
tr.appendChild(out);
break;
case Event.ONMOUSEOUT:
tr.getChild(1).removeFromParent();
break;
}
}
};
当你说“不工作”,究竟是什么意思呢?请你能更具体。 – 2012-08-09 14:35:04