我有一个带有两个TabPanel的GWT应用程序。
TabPanel生成具有前缀gwt-TabPanel的 有没有办法为其中一个表更改此前缀?我希望能够独立设置两个TabPanel的样式。
答案 0 :(得分:2)
为了解决这个问题,我做了:
使用setStylePrimaryName(String);这将更改TabPanel和TabBar使用的CSS类名称的前缀。
tabPanel.getTabBar().setStylePrimaryName("myTabBar");
tabPanel.setStylePrimaryName("myTabPanel");
在CSS文件中添加如下内容:
.myTabBar {
}
.myTabBar .gwt-TabBarFirst {
width: 5px; /* first tab distance from the left */
}
.myTabBar .gwt-TabBarRest {
}
.myTabBar .gwt-TabBarItem {
margin-left: 6px;
padding: 3px 6px 3px 6px;
cursor: pointer;
cursor: hand;
color: black;
font-weight: bold;
text-align: center;
background: #3A3A3A;
}
.myTabBar .gwt-TabBarItem-selected {
cursor: default;
/* background: black; */
}
.myTabBar .gwt-TabBarItem-disabled {
cursor: default;
color: red;
}
.myTabPanel {
}
.myTapPanel .myTabPanelBottom {
border-width: 0px;
overflow: hidden;
padding: 6px;
}
对于第二个TabPanel,您可以在TabPanel和TabBar上使用setStylePrimaryName()设置不同的。然后使用第二个主要名称将新部分添加到CSS文件中。
答案 1 :(得分:0)
您可以使用方法setStyleName()
和addStyleName()
为GWT UI对象设置或添加CSS样式。