4
我想基於Vaadin網格組件實現表格。在這種情況下,某些字段包含大量文本和網格總是顯示單行而不是多行。在vaadin網格中啓用wordwrap(多行)
我試圖修改CSS根據vaadin forum的一些想法,但我得到了同樣的結果。在網格標題中同樣的情況下,它顯示帶有省略號的單行。
請提供任何想法如何解決它?
我想基於Vaadin網格組件實現表格。在這種情況下,某些字段包含大量文本和網格總是顯示單行而不是多行。在vaadin網格中啓用wordwrap(多行)
我試圖修改CSS根據vaadin forum的一些想法,但我得到了同樣的結果。在網格標題中同樣的情況下,它顯示帶有省略號的單行。
請提供任何想法如何解決它?
網格從客戶端管理這種風格,我們不能也不應該直接控制它。
但是網格組件提供了一種顯示隱藏數據的方法或的細節由DetailsGenerator
。
但是,對於標題,我們不能做任何事情,因爲唯一的解決方案是儘可能保持標題小和描述性。但仍然在我看來,標題上的單詞換行看起來不太好。
下面的例子管理對項目選擇的詳情可見性,
Grid g = new Grid();
g.addColumn("num");
g.addColumn("val");
g.setWidth(400, Unit.PIXELS);
g.setHeight(300, Unit.PIXELS);
g.getColumn("num").setWidth(100);
g.getColumn("val").setWidth(300);
g.addRow("1", "This is just a simple test. No need to take it too seriously, please !!!!");
g.addRow("2", "This is just a simple test. No need to take it too seriously, please !!!!");
g.addRow("3", "This is just a simple test. No need to take it too seriously, please !!!!");
g.addRow("4", "This is just a simple test. No need to take it too seriously, please !!!!");
g.addItemClickListener(new ItemClickListener() {
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
public void itemClick(ItemClickEvent event) {
g.setDetailsVisible(event.getItemId(), !g.isDetailsVisible(event.getItemId()));
}
});
g.setDetailsGenerator(new DetailsGenerator() {
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
public com.vaadin.ui.Component getDetails(RowReference rowReference) {
String value = (String)rowReference.getItem().getItemProperty("val").getValue();
Label val = new Label();
val.setValue(value);
val.addStyleName(ValoTheme.LAYOUT_HORIZONTAL_WRAPPING);
return val;
}
});
謝謝回答!我嘗試過實現類似的東西,但在我的表格12列中,其中一些應該是多行的,並且具有細節生成器,它看起來有點奇怪。同樣你也很難過,標題中的mutline看起來不太好,即時通訊同意你的看法,但是有了真實的數據,而不是帶有名稱/值的示例或展示,由bussines引起的列名,所以你不能只改變它們。謝謝! – aim