Css GWT PagingScrollTable(在标题表的特定单元格上设置样式)

Css GWT PagingScrollTable(在标题表的特定单元格上设置样式),css,gwt,Css,Gwt,我对扩展AbstractColumnDefinition的每个列都有一个列定义。这些列放在PagingScrollTable的DefaultTableDefinition部分 例如: 名称|大小|大小|删除| 如果您注意到所有列名都带有光标指针,则此样式(在页面末尾)将添加到列名中,这意味着当我将鼠标悬停在每个列名上方时,会显示一只手。 我想删除标题中某些单元格的光标,如delete 如何在PagingScrollTable标题表的特定单元格上设置/添加/删除样式 PagingScrollTab

我对扩展AbstractColumnDefinition的每个列都有一个列定义。这些列放在PagingScrollTable的DefaultTableDefinition部分

例如:

名称|大小|大小|删除|

如果您注意到所有列名都带有光标指针,则此样式(在页面末尾)将添加到列名中,这意味着当我将鼠标悬停在每个列名上方时,会显示一只手。 我想删除标题中某些单元格的光标,如delete

如何在PagingScrollTable标题表的特定单元格上设置/添加/删除样式

PagingScrollTable scrollTable = ...
scrollTable.getHeaderTable().getCellFormatter().addStyleName(row, column, "myStyleName");
多谢各位

.gwt滚动表.headerTable td{

border-left: 1px solid #CCCCCC;

border-right: 1px solid #CCCCCC;

border-bottom: 1px solid black;

vertical-align: bottom;

cursor: pointer;

}

编辑2再次更新了此选项,因为OP的问题终于很清楚了:如何在PagingScrollTable标题表的特定单元格上设置样式

PagingScrollTable scrollTable = ...
scrollTable.getHeaderTable().getCellFormatter().addStyleName(row, column, "myStyleName");
其中,行和列是基于0的整数,指示要在标题表的哪个单元格上设置样式

Edit更新了此内容,以解释如何在标题上设置样式,因为提问者澄清了这是他们想要的

如果要向PagingScrollTable的标题添加样式,只需执行以下操作:

PagingScrollTable scrollTable = ...
scrollTable.getHeaderTable().addStyleName(row, "myStyleName");
然后为myStyleName输入CSS规则,将光标设置为您想要的任何一个,如下所示:

.myStyleName {
  cursor: default;
}
请注意,光标是指针的原因是,单击PagingScrollTable中的列标题将按该列对表进行排序。要禁用它,请调用
scrollTable.setSortPolicy(AbstractScrollTable.SortPolicy.DISABLED

原始答案这将为表格正文中的列添加样式,但不会添加页眉或页脚:

既然你提到了,我想你说的是。在这种情况下,向单元格中添加CSS样式的方法是针对该单元格的。一旦你获得了
列定义
,请执行以下操作:

CellRenderer<YourRowType, String> cellRenderer = new CellRenderer<YourRowType, String>() {
  public void renderRowValue(RowType rowValue, ColumnDefinition<RowType, String> columnDef,
                             TableDefinition.AbstractCellView<RowType> view) {
    view.setHTML(value);
    view.addStyleName("myStyleName");
  }
};

columnDefinition.setCellRenderer(cellRenderer);
CellRenderer CellRenderer=new CellRenderer(){
public void renderRowValue(行类型rowValue、列定义columnDef、,
TableDefinition.AbstractCellView(视图){
view.setHTML(值);
view.addStyleName(“myStyleName”);
}
};
columnDefinition.setCellRenderer(cellRenderer);

您必须适当地更改
CellRenderer
的类型参数,但这或多或少就是如何做到的。

感谢您的时间和帮助,我可能没有明确说明我要添加样式的表的哪一部分,我要更改或添加样式到标题名..deleteDef.setHeader(0,“删除”);因此它不会显示手动光标!!!deleteDef扩展了DefaultTableDefinition中的AbstractColumnDefinition,是的,我正在使用PagingScrollTable…所以只想删除标题样式。注意:您的代码处理的是孔列而不是标题。很好的示例和代码,但此函数会删除所有表格的光标ader..在我的表格标题中..我有“名称”、“大小”、“删除”和“分辨率”,如果可能的话,我只想删除delete列的光标!!因为我开始觉得不可能!!:D非常感谢你的帮助!!你好,所以我尝试了你给我的最后一个函数,但没有成功..发生了一些奇怪的事情!!所以当我这样做时:pageTable.getHeaderTable().removeStyleName(“headerTable”);它确实删除了头部的css样式..因此我认为我们走对了方向。第二,当我开始更改或添加样式时。pageTable.getHeaderTable().getCellFormatter().addStyleName(0,2,“光标删除”);0表示顶行2表示第三列,表示一个单元格并删除光标,它仍然存在,我尝试在代码中放置此函数很多地方,但都不起作用,还尝试使用getRow和getColumn格式化程序,结果仍然相同!!我还尝试将样式放置在diff.css文件中…还尝试添加了diff css样式以查看它是否改变了什么,我在firebug中检查了它,但是我尝试添加或设置的css代码没有显示。注意:我还注意到,当我尝试在任何类型的单元格上删除样式时,它会给我一个IndexOutOfBoundsException(行索引:0,行大小:0);当我尝试添加或设置它时,它不会…这是非常奇怪的pageTable.getHeaderTable().getCellFormatter().removeStyleName(2,2,“headerTable”);请编辑您的问题,使其更清楚地显示您的问题。这样,将来有相同问题的人将能够找到此问题。