GWT:如何更改GWT Celltable中的行颜色
我在GWT中有一个celltable,我可以通过它更改特定列的颜色GWT:如何更改GWT Celltable中的行颜色,gwt,Gwt,我在GWT中有一个celltable,我可以通过它更改特定列的颜色 celltable.addColumnStyleName(4, "bluetext"); 但我如何更改例如第3行的颜色 谢谢您必须提供一个RowStyles对象来返回每行的css类名。因此,要为一行设置特定的颜色,必须使用该颜色定义一个css类,然后使RowStyles对象为相关行返回该类 我想您可以使用cellTable.setRowStyles或类似的设置 cellTable.setRowStyle
celltable.addColumnStyleName(4, "bluetext");
但我如何更改例如第3行的颜色
谢谢您必须提供一个
RowStyles
对象来返回每行的css类名。因此,要为一行设置特定的颜色,必须使用该颜色定义一个css类,然后使RowStyles
对象为相关行返回该类
我想您可以使用cellTable.setRowStyles
或类似的设置
cellTable.setRowStyles(new RowStyles<T>() {
@Override
public String getStyleNames(T rowObject, int rowIndex) {
if (rowIndex == 3) {
return "bluetext";
} else {
return "normaltext";
}
});
cellTable.setRowStyles(新的RowStyles(){
@凌驾
公共字符串getStyleName(T行对象,int行索引){
如果(行索引==3){
返回“bluetext”;
}否则{
返回“normaltext”;
}
});
如果需要根据其中一个单元格中更改的值更新行颜色,可以将以下代码添加到此单元格的fieldUpdater中:
@Override
public void update(int index, Object object, String value) {
if (someConditionIsMet) {
myTable.getRowElement(index).addClassName("redBackground");
}
}
在CSS文件中添加以下样式:
.redBackground {
background-color: red !important;
}
要回答样式位于行元素中但未呈现的最后一条注释,请执行以下操作: 正在使用setRowStyles(新的RowStyles()。。。 我得到这些风格的唯一方法就是使用暴力。 我必须从列表存储中删除该行,将其添加回同一索引,然后刷新RowModel。
因为它的价值。你所说的CSS文件是你的_module.CSS?!因为它对我不起作用。谢谢。无论你在应用程序中使用什么CSS文件。如果你有几个,它们可能会相互冲突。你可以使用浏览器工具查看哪个样式实际应用于表行,哪些样式被忽略。我确实看到CSS文件s应用于元素,但不显示样式!!重要信息使选定元素不高亮显示。@SimonLogic:如果对整行应用颜色,它将覆盖单元格颜色。如果要保留选定单元格的单元格颜色,可以在CSS中使用更具体的选择器(例如“redBackground.selected”)覆盖它。