我有一个从ResourceBundle设置样式的GWT 2.0 ToggleButton:

ToggleButton tb = new ToggleButton();
tb.setStyleName(MyResources.INSTANCE.MyCssResource().TogBut());

然后,客户端实现将其他样式添加到“TogBut-up”和“TogBut-down”中,以样式化按钮的状态。

但是,我无法在CSS中添加“TogBut-down”之类的样式,因为这是CssResource子类接口中字段的无效名称。

有谁知道这种情况下的最佳实践?我是否应该避免混淆和资源捆绑在一起?

最佳答案

您可以使用@ClassName批注使用所需的任何CSS类名称

String TogBut();
@ClassName("TogBut-up")
String TogButUp();
@ClassName("TogBut-down")
String TogButDown();

在CSS中,您有:
.TogBut{
 ...
}
.TogBut-up{
 ...
}
.TogBut-down{
 ...
}

Google的相关文档:http://code.google.com/webtoolkit/doc/latest/DevGuideClientBundle.html#Constants

09-26 12:33