我想要替代 GWT 已弃用的 API com.google.gwt.user.client.Element,用于我的自定义标签。做这个的最好方式是什么?
import com.google.gwt.resources.client.ImageResource;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.Element;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.Label;
public class CustomTabLabel extends Label {
private String text;
public CustomTabLabel() {
super();
super.setWidth("250px");
}
public void setResource(ImageResource imageResource) {
Image img = new Image(imageResource);
String definedStyles = img.getElement().getAttribute("style");
img.getElement().setAttribute("style", definedStyles + "; vertical-align:middle;");
DOM.insertBefore(getElement(), img.getElement(), DOM.getFirstChild(getElement()));
}
@Override
public void setText(String text) {
this.text = text;
Element span = DOM.createElement("span");
span.setInnerText(text);
span.setAttribute("style", "padding-left:7px; padding-right:7px; vertical-align:middle;");
DOM.insertChild(getElement(), span, 0);
}
@Override
public String getText() {
return this.text;
}
}
Run Code Online (Sandbox Code Playgroud)
我使用的是 2.6.0 GWT 版本。