2017-10-25 12 views
1

나는 여러 열이있는 테이블을 가지고 있습니다. 열 중 하나는 라벨 클래스Vaadin7 테이블 정렬 레이블 열 숫자로

container.addContainerProperty(ID_COLUMN, Label.class, ""); 

이며 내가이 테이블을 클릭하여 테이블을 정렬 할 때 내가

referenceItem.getItemProperty(ID_COLUMN).setValue(new Label(new Integer(reference.getId()).toString())); 

처럼 채워, 그것은

1 
10 
100 
2 
200 
7 
같은 데이터를 정렬

그래서 클래스를 Integer로 변경하려고 시도했지만 제대로 작동하지만 쉼표로 숫자를 얻습니다.

1 
2 
... 
.. 
7,456 
8,455 

어떻게 데이터를 숫자로 정렬하고 쉼표없이 정렬 할 수 있습니까?

+0

이 _i는 Integer_에 클래스를 변경했습니다. 정확히 어떻게'container.addContainerProperty (ID_COLUMN, Integer, "");'처럼? 그리고 'referenceItem.getItemProperty (ID_COLUMN) .setValue (new Integer (reference.getId()));' – pirho

+0

은' Vaadin7'? – user1631306

+0

처럼 ' – pirho

답변

1

알아낼 수있었습니다. 나는 나의 열의 클래스로 정수를 사용하고 내가 만약 angel Table 재미 되었기 때문에 그것은 잠시왔다

referenceTable = new Table() 
    { 
     @Override 
     protected String formatPropertyValue(final Object a_row_id, final Object a_col_id, final Property<?> a_property) 
     { 
      if (a_property.getType() == Integer.class && null != a_property.getValue()) 
      { 
       DecimalFormat df = (DecimalFormat) DecimalFormat.getInstance(getLocale()); 
       df.applyLocalizedPattern("#0"); 
       return df.format(a_property.getValue()); 
      } 
      return super.formatPropertyValue(a_row_id, a_col_id, a_property); 
     } 
    }; 
0

다음 사용.

속성 포맷터, 발전기 등 ... 물건이 있지만이 경우에는 단지에 쉬운 수 있습니다 :

container.addContainerProperty(ID_COLUMN, String.class, ""); 
referenceItem.getItemProperty(ID_COLUMN).setValue(""+reference.‌​getId());