2017-09-27 24 views
2

私はこのように私の列のグリッドを定義します。グリッド列の値がnullの場合のデフォルト値の表示方法

grid.addColumn(u -> u.getUsername()).setCaption("User"); 
grid.addColumn(u -> u.getUserFullname()).setCaption("Full Name"); 
grid.addColumn(u -> u.getLastLoggedInDate()).setCaption("Last login"); 
grid.addColumn(u -> Boolean.TRUE.equals(u.getBlocked()) ? 
    "YES" : "NO").setCaption("Blocked?"); 

最終ログイン--> u.getLastLoggedInDate()は、null値を持っています。後で価値があります。

どのように私は、デフォルトのテキストはあなたのラムダu -> u.getLastLoggedInDate()あなたは

u -> u.getLastLoggedInDate() == null ? 
    "Not logged in yet" : 
    u.getLastLoggedInDate() 

答えて

5

のように変更することができる値

enter image description here

+0

これは完璧に動作します! –

3

を持つ前にを "まだログインしていません" を表示するように定義することができますTextRendererを設定できます

grid.addColumn(u -> u.getLastLoggedInDate(), new TextRenderer("Not logged yet")).setCaption("Last login"); 
+0

これはどのようにAPIで行いますか? –

関連する問題