我使用 RapidClipse 4。
在一个视图中,我生成了一个带有分组总和行的交叉表 (XdevGrid)。
总数是在 sql 代码中构建的。
行号 | 详情 | 第 1 个月...第 n 个月 | 总计|
1 | 一个 | 0.5 | 1 | 3 |... | 4.5 |
2 | 一个 | 0.8 | 0.2 | 1 |... | 2.0 |
3 | 总计 | 1.3 | 1.2 | 4 |... | 6.5 |
4 |B ......
5..... aso
我想将包括总计在内的整行的文本样式更改为粗体。
我搜索了很多广告,发现了很多 ;-) 但我的经验不足以适应它。
我假设我可以使用 Vaadin 之外的元素,因为 XdevGrid 基于 Vaadin 7。
为了将数据分配给网格,我使用了以下代码:
final XdevBeanItemContainer<VUmsCrosstbl2> myContainer = new XdevBeanItemContainer<>(VUmsCrosstbl2.class);
myContainer.addAll(new VUmsCrosstbl2DAO().getAllCrossDataforYearKonto2(selJahr, "7,8"));
this.tblUmsCross.setContainerDataSource(myContainer);
我仍然生成了一个计算单元格并将其包含在表格中。
package com.opaheinz.rc_07.ui;
import java.util.Formatter;
import com.opaheinz.rc_07.entities.VUmsCrosstbl2;
import com.vaadin.ui.Component;
import com.vaadin.ui.CssLayout;
import com.vaadin.ui.Table;
import com.vaadin.ui.Table.ColumnGenerator;
import com.xdev.ui.entitycomponent.table.XdevTable;
public class MyFormatIndicator implements ColumnGenerator {
@Override
public Object generateCell(final Table table, final Object itemId, final Object columnId) {
final VUmsCrosstbl2 bean = getBean(table, itemId);
final String myIndicator = "";
if (bean.getL1GroupName().toLowerCase().startsWith("<b>"))
{
myIndicator = "1";
// For this case, I would like to change the row style
} else {
myIndicator = "0";
}
return myIndicator;
}
我使用生成的单元格来验证是否有总数。
我创建了一个特殊的样式条目 v-table-row-total 并将其放在 styles.scss 中:
.v-grid-row.total> td {
background-color: blue;
font-weight: bold;
}
到目前为止,这工作得很好。
但我无法访问行样式并进行设置。
我试图将 vaadin 示例转移到我的 rapidclipse 项目中,但也没有成功。
我的问题是:
有没有人对 XdevTable/XdevGrid 有过这样的要求?
这还有可能吗?
谁能给我一个粗略的例子?
提前谢谢你
rgds OpaHeinz