1

私はVaadinを使用しています。NativeSelectを使用してロケールを切り替えたい。

@Override
public void valueChange(ValueChangeEvent event) {
    UI.getCurrent().setLocale(loc);
}

使用したかったのですevent.getProperty()が、「loc」はロケールタイプである必要があります。ネイティブ選択の値を取得してロケールタイプに変換するにはどうすればよいですか?

4

1 に答える 1

7

次のように入力していると思いますNativeSelect

  nativeSelect.addItem(Locale.ENGLISH);
  nativeSelect.addItem(Locale.GERMAN); 
  ...
  // you can also use setItemCaption(objectId, caption) method to give humanized  
  // caption to each item in NativeSelect.

その後、コンポーネントに aProperty.ValueChangeListenerを追加できます。NativeSelect

  nativeSelect.addListener(new Property.ValueChangeListener() {

        @Override   
        public void valueChange(ValueChangeEvent event) {
            Locale loc = (Locale) event.getProperty().getValue();
            UI.getCurrent().setLocale(loc);
        }

  });
于 2013-01-30T19:28:39.343 に答える