Выбор языка выпадающего - PullRequest
0 голосов
/ 14 апреля 2010

Я хочу создать раскрывающийся список выбора на основе языков, которые поддерживает мой веб-сайт. Я не могу найти компонент в Wicket, который делает это из коробки. Как я могу это сделать?

Ответы [ 2 ]

1 голос
/ 19 апреля 2010

Вклад библиотеки калитки: http://www.wicket -library.com / wicket-examples / forminput /

1 голос
/ 14 апреля 2010

Я не проверял это, но попробуйте что-то вроде:

private Locale chosenLocale;

public LocalePage() {
    Form<Void> form = new Form<Void>( "form" ) {
        @Override
        protected void onSubmit() {
            // do something with this.chosenLocale
            // perhaps getSession().setLocale(this.chosenLocale);
        }
    };
    List<Locale> locales = new ArrayList<Locale>(Arrays.asList( Locale.ENGLISH, Locale.FRENCH  ));
    DropDownChoice<Locale> choice = new DropDownChoice<Locale>( "locale", new PropertyModel<Locale>( this,
            "chosenLocale" ), locales, new IChoiceRenderer<Locale>() {

        @Override
        public Object getDisplayValue(Locale object) {
            return object.toString();
        }

        @Override
        public String getIdValue(Locale object, int index) {
            return String.valueOf( index );
        }

    } );

    add( form.add( choice.setNullValid( false ) ) );
}

с разметкой вроде:

<html>
<body>
    <form wicket:id="form">
        <select wicket:id="locale" />
        <input type="submit" />
    </form>
</body>
</html>
...