好的,要为 Gwt 或 Gwtp 中的小部件设置 Css,我们可以执行以下操作:
-1。直接来自gwt代码。例如:label1.getElement().getStyle().setBackground("blue"); -2。在 UiBinder xml 文件中包含“ui:style”,但此 css 仅对该 UiBinder 可见 -3。在 UiBinder xml 文件中包含“ui:width”,它将对所有 UiBinder 可见 - 并且有很多方法可以将 Css 直接设置为 UiBinder 中的小部件。
让我感到困惑的是,如果我使用,前
<ui:with field='res' type="com.myproj.client.MyResource" />
& 如果myResource.css
有,.gwt-TabLayoutPanel
那么我不需要使用“addStyleNames”,例如<g:TabLayputPanel />
,它可以完美地识别 CSS。
但是,如果我添加.gwt-ScrollPanel
并myResource.css
使用<g: ScrollPanel />
,那么什么也没有发生。
所以我必须创建public interface MyCssResource extends CssResource
,然后添加String gwt-ScrollPanel();
到MyCssResource
. 但是 Java eclipse 不允许-
方法名中有连字符,所以我必须改为String gwtScrollPanel();
.
最后,我必须添加addStyleNames
到<g: ScrollPanel />
, ex<g: ScrollPanel addStyleNames="{res.css.gwtScrollPanel}" />
然后它才能工作。
这也意味着如果我想使用.gwt-TabLayoutPanel
in MyCssResource
,那么我需要删除连字符-
,这将导致我的代码不一致。
那么,有人可以向我解释这里发生了什么吗?我很困惑?