2017-09-11 84 views
0

Vaadin Framework 8.1應用程序在Grid小部件上,如何在設置後清除column renderer清除Vaadin 8.1中柵格列中的渲染器

我們可以通過調用setRenderer設置一個Grid.Column渲染。如何取消設置?

傳遞null導致空指針異常:

顯示java.lang.NullPointerException:渲染器不能爲空

的默認行爲之前設置的渲染似乎是簡單地調用toString上該列的對象。

➟如何回到默認行爲?

+0

您的用於清除渲染器的用例是什麼?或者在創建列後更改渲染器? –

+0

@SteffenHarbich用戶想改變他們對數據的看法。在日期時間值上切換時區,或通過貨幣轉換貨幣,或將數字四捨五入以便於掃描,同時顯示準確數量的精確數據,或以科學記數法顯示數字,或更改使用圖標字符的方案,如RottenTomatoes.com番茄儀表,並繼續。 –

回答

1

沒有辦法問Vaadin恢復到默認值。

在設置新的渲染,你可以要求現有的默認渲染器。

Renderer<?> r = this.columnInstant.getRenderer() ; 

然後再重新應用它。

myGridColumn.setRenderer(r) ; 

通常,默認渲染器是com.vaadin.ui.renderers.TextRenderer。如果比保留舊的引用更方便,可以實例化一個新的引用。

myGridColumn.setRenderer(new com.vaadin.ui.renderers.TextRenderer()) ;