【发布时间】:2012-05-24 17:03:57
【问题描述】:
我创建了一个包含 300 多行的 CellTable,分为 20 页。我的菜单中有一个命令,允许用户根据某列中的值突出显示行(类似于 Excel 中的条件格式)。
我需要帮助的是更改不在当前页面上的行的行样式。
我已经浏览了 Celltable 和 SimplePager 文档,但没有任何东西能引起我的注意。我对 GWT 很陌生,因此非常感谢任何帮助。
【问题讨论】:
我创建了一个包含 300 多行的 CellTable,分为 20 页。我的菜单中有一个命令,允许用户根据某列中的值突出显示行(类似于 Excel 中的条件格式)。
我需要帮助的是更改不在当前页面上的行的行样式。
我已经浏览了 Celltable 和 SimplePager 文档,但没有任何东西能引起我的注意。我对 GWT 很陌生,因此非常感谢任何帮助。
【问题讨论】:
我创建了一个看起来像这样的函数(其中 redRow 和 yellowRow 是我的 CSS 中的样式):
private void highlightAlerts() {
alertHighlight = true;
Range range = siteTable.getVisibleRange();
int start = range.getStart();
for (int i=0; i<siteTable.getPageSize(); i++) {
if (dataProvider.getList().get(start+i).alert.equals("Error"))
siteTable.getRowElement(i).setClassName("redRow");
else if (dataProvider.getList().get(start+i).alert.equals("Warning"))
siteTable.getRowElement(i).setClassName("yellowRow");
}
然后在我的寻呼机中,我将其添加到 onRowOrRowCountChanged() 以便在用户浏览表格页面时样式会持续存在:
protected void onRangeOrRowCountChanged() {
super.onRowOrRountCountChanged();
if (alertHighlight)
highlightAlerts();
}
【讨论】: