java display使用方法_Java Style.setDisplay方法代码示例

这篇博客介绍了如何在Java GWT应用中使用Style.setDisplay方法来控制表格行的显示与隐藏。首先,导入com.google.gwt.dom.client.Style包,然后在创建新的TableRow时,设置其DisplayStyle为NONE以隐藏行。同时,设置行的高度属性,并在需要时添加选择和展开功能。

import com.google.gwt.dom.client.Style; //导入方法依赖的package包/类

@Override

public TableRow drawRow(DataView dataView, RowComponent rowComponent, Object valueKey,

List> columns, boolean redraw) {

T data = rowComponent.getData();

TableRow row = rowComponent.getWidget();

boolean draw = true;

if(row == null) {

// Create a new row element

row = new TableRow();

Style style = row.getElement().getStyle();

style.setDisplay(Display.NONE);

style.setProperty("height", getExpectedRowHeight() + "px");

style.setProperty("maxHeight", getExpectedRowHeight() + "px");

style.setProperty("minHeight", getExpectedRowHeight() + "px");

row.setStyleName(TableCssName.DATA_ROW);

rowComponent.setWidget(row);

if(!dataView.getSelectionType().equals(SelectionType.NONE)) {

TableData selection = drawSelectionCell();

row.add(selection);

}

} else if(!redraw && !rowComponent.isRedraw()) {

draw = false;

}

if(draw) {

// Build the columns

int colOffset = dataView.getColumnOffset();

int colSize = columns.size();

for(int c = 0; c < colSize; c++) {

int colIndex = c + colOffset;

Context context = new Context(rowComponent.getIndex(), colIndex, valueKey);

drawColumn(row, context, data, columns.get(c), colIndex, dataView.isHeaderVisible(colIndex));

}

rowComponent.setRedraw(false);

}

if(dataView.isUseRowExpansion()) {

if(!row.hasExpansionColumn()) {

TableData expand = new TableData();

expand.setId("colex");

MaterialIcon expandIcon = new MaterialIcon();

expandIcon.setId("expand");

expandIcon.setWidth("100%");

expandIcon.setIconType(IconType.KEYBOARD_ARROW_DOWN);

expandIcon.setWaves(WavesType.LIGHT);

expandIcon.getElement().getStyle().setCursor(Cursor.POINTER);

expand.add(expandIcon);

row.add(expand);

}

} else if(row.hasExpansionColumn()) {

row.removeExpansionColumn();

}

Scheduler.get().scheduleDeferred(() -> {

calculateRowHeight(rowComponent);

});

return row;

}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值