向gwt中的小部件添加样式和删除样式
我写了这样一个小部件:向gwt中的小部件添加样式和删除样式,gwt,Gwt,我写了这样一个小部件: public class GroupLbl extends Composite implements ClickHandler, MouseOutHandler { private Label lbl; private GroupLblHandler lblHandler = null; private HorizontalPanel hp; public void onClick(ClickEvent event) { hp.setStyleName("bac
public class GroupLbl extends Composite implements ClickHandler, MouseOutHandler {
private Label lbl;
private GroupLblHandler lblHandler = null;
private HorizontalPanel hp;
public void onClick(ClickEvent event) {
hp.setStyleName("background-GroupLbl");
if (event.getSource().equals(folder) || event.getSource().equals(lbl)) {
lblHandler.onGroupLabelSelect(this);
}
}
public GroupLbl(String title, GroupLblHandler handler) {
hp.add(lbl);
lblHandler = handler;
if (handler != null) {
lbl.addClickHandler(this);
}
initWidget(hp);
}
@Override
public Widget getWidget() {
return hp;
}
public void onMouseOut(MouseOutEvent event) {
hp.removeStyleName("background-GroupLbl");
}
}
我以我的形式使用这个小部件,当用户单击小部件的一个实例时,样式名应该分配给它,当用户单击另一个实例时,样式名应该分配给它,第一个应该删除我实现的mouseouthandler的样式名,但它不起作用,样式将bgcolor设置为hp,以便用户了解他/她选择了哪个组。我该怎么做(这是我代码的一部分)?请原谅我英语不好 定义一个附加的CSS样式,后缀为
-background
,带有您想要的背景颜色。
使用addStyleDependentName(“背景”)
以及removeStyleDependentName(“背景”)
来添加/删除背景样式,而不是setStyleName