问题描述
|
我试图将锚添加到单元格表列
有没有办法做到这一点 ????
谢谢。
解决方法
尝试使用ClickableTextCell并将其ValueUpdater设置为调用需要锚点执行的任何方法
,创建一个覆盖
onBrowserEvent
方法的Column
。
像这样:
new Column<T,String>(new TextCell()) {
@Override
public String getValue(T object) {
return object.getProperty();
}
@Override
public void onBrowserEvent(Context context,Element elem,T object,NativeEvent event) {
// TODO You can check which event you want to catch
Window.open(\"http://www.stackoverflow.com\",\"StackOverFlow\",\"\");
}
};
,这个问题已经很老了,但仍会添加答案,可能会对其他人有所帮助。在下面的代码中,我使用clickableTextCell和一些样式更改来给人一种锚感;)
Column<YourDataClass,String> columnValue = new Column<YourDataClass,String>(
new ClickableTextCell()) {
@Override
public String getCellStyleNames(Cell.Context context,YourDataClass object) {
return style.clickableText();
}
@Override
public String getValue(YourDataClass object) {
return \"Anchor Name\"; //This is anchor text eg: Download Something
}
};
columnValue.setFieldUpdater(new FieldUpdater<YourDataClass,String>() {
@Override
public void update(int index,YourDataClass obj,String value) {
//Do stuff for click event.
}
});
agentsTable.addColumn(columnValue,\" \");
agentsTable.setColumnWidth(columnValue,10,com.google.gwt.dom.client.Style.Unit.PCT);
在您的类中添加以下代码以进行样式设置;
@UiField
Style style;
public interface Style extends CssResource {
String clickableText();
}
将以下样式添加到ui.xml文件中:
.clickableText{
align: left;
color: blue;
text-decoration: underline;
}
阅读http://www.pandurangpatil.com/2014/03/gwt-access-style-defined-inside-uixml.html,以了解如何从类中的ui.xml访问样式