将自定义样式附加到 GWT CellTable(在本例中为所有单元格)
Posted
技术标签:
【中文标题】将自定义样式附加到 GWT CellTable(在本例中为所有单元格)【英文标题】:Append custom style to a GWT CellTable (in this case all cells) 【发布时间】:2011-06-17 12:57:42 【问题描述】:我有一个案例要追加
white-space: nowrap;
我的 CellTable 中每个单元格的样式。目前它适用于所有表格,但很高兴知道两者都必须将其应用于特定的 CellTable 和所有 CellTable。
【问题讨论】:
【参考方案1】:CellTables 有自己的CssResource。要覆盖应用于 cellTable 中所有单元格的此样式,请创建一个新的 css 文件:
/* Incremental changes from CellTable.css */
.cellTableCell
white-space: nowrap;
然后创建自己的 CellTable.Resources 接口:
public interface TableResources extends CellTable.Resources
/**
* The styles applied to the table.
*/
interface TableStyle extends CellTable.Style
@Override
@Source( CellTable.Style.DEFAULT_CSS, "MyOwnCellTableStyleSheet.css" )
TableStyle cellTableStyle();
最后,在创建 cellTable 时,使用constructor 让您指定要使用的资源
CellTable<Object> myCellTable = new CellTable<Object>(15, GWT.create(TableResources.class));
有关工作示例,请查看 GWT SDK 中提供的费用示例。
【讨论】:
非常好的答案,与我合作得很好,除了在 GWT 2.4 上您必须转换为 (Resources)GWT.create(TableResources.class) 之类的资源才能工作。 感谢您的解决方案。我发现它完全没有 TableStyle 接口也可以工作。你可以写: CellTable.Style cellTableStyle();这在一定程度上减少了样板。我在 GWT 2.6.0 上试过了【参考方案2】:或者你可以用简单的方法做到这一点:
CellTable<YourObj> yourTable = new CellTable<YourObj>();
yourTable.getElement().getStyle().setWhiteSpace(WhiteSpace.NOWRAP);
没有 css 文件,没有奇怪的样板代码。
【讨论】:
以上是关于将自定义样式附加到 GWT CellTable(在本例中为所有单元格)的主要内容,如果未能解决你的问题,请参考以下文章
如何将图像添加到 GWT 中的 cellTable 中的单元格
GWT CellTable 选择并单击 CheckBoxCell