Wicket ListMultipleChoiceの例
Wicketでは、ListMultipleChoice
を使用してmulti select scrollable listboxを作成できます。
//Java import org.apache.wicket.markup.html.form.ListMultipleChoice; ... //choices in list box private static final ListNUMBERS = Arrays.asList(new String[] { "Number 1", "Number 2", "Number 3", "Number 4", "Number 5", "Number 6" }); //variable to hold the selected multiple values from listbox, //and make "Number 6" selected as default value private ArrayList selectedNumber = new ArrayList ( Arrays.asList(new String[] { "Number 6" })); ListMultipleChoice listNumbers = new ListMultipleChoice ( "number", new Model(selectedNumber), NUMBERS); //HTML for multiple select listbox
1. Wicket複数選択リストボックスの例
「ListMultipleChoice
」を介して複数選択のスクロール可能なリストボックスを表示し、デフォルトで選択された値を表示する例。
package com.example.user; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import org.apache.wicket.PageParameters; import org.apache.wicket.markup.html.form.Form; import org.apache.wicket.markup.html.form.ListMultipleChoice; import org.apache.wicket.markup.html.panel.FeedbackPanel; import org.apache.wicket.markup.html.WebPage; import org.apache.wicket.model.Model; public class ListMultipleChoicePage extends WebPage { private static final ListNUMBERS = Arrays.asList(new String[] { "Number 1", "Number 2", "Number 3", "Number 4", "Number 5", "Number 6" }); // Number 6 is selected by default private ArrayList selectedNumber = new ArrayList ( Arrays.asList(new String[] { "Number 6" })); public ListMultipleChoicePage(final PageParameters parameters) { add(new FeedbackPanel("feedback")); ListMultipleChoice listNumbers = new ListMultipleChoice ( "number", new Model(selectedNumber), NUMBERS); listNumbers.setMaxRows(5); Form> form = new Form ("form") { @Override protected void onSubmit() { info("Selected Number : " + selectedNumber); } }; add(form); form.add(listNumbers); } }
2. Wicket HTMLページ
複数選択のスクロール可能なリストを表示するページ。
Wicket ListMultipleChoice example
3. Demo
「番号6」が自動的に選択されます。
「数字2、4、6」を選択し、表示ボタンをクリックします。
ダウンロード–Wicket-ListMultipleChoice-Examples.zip(7KB)