私はVaadinを使用しています。NativeSelectを使用してロケールを切り替えたい。
@Override
public void valueChange(ValueChangeEvent event) {
UI.getCurrent().setLocale(loc);
}
使用したかったのですevent.getProperty()
が、「loc」はロケールタイプである必要があります。ネイティブ選択の値を取得してロケールタイプに変換するにはどうすればよいですか?
次のように入力していると思います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);
}
});