値の取得ボタンをクリックすると選択されている一覧のVALUE値を取得しボタンの右横に表示します。
値の設定ボタンをクリックするとボタンの右横に表示されている一覧項目を選択します。
一覧変更ボタンをクリックすると一覧の項目を入れ替えます。
≪作成時注意点≫
・HTMLファイル中にname属性付きのSELECTタグを挿入します。
【例】<select name="selectItem">
<option value="A">項目 A</option>
<option value="B" selected>項目 B</option>
<option value="C">項目 C</option>
</select>
・入力された情報がWEBサーバーに送信されるようにSELECTタグは
name属性で名前をつけられたFORMタグで囲まれている必要があります。
【例】<form name="formItem" method="post">
<select name="selectItem">
<option value="A">項目 A</option>
<option value="B" selected>項目 B</option>
<option value="C">項目 C</option>
</select>
</form>
・HTMLファイル内のSELECTタグで囲まれたOPTIONタグで指定される一覧情報は
pirka動作時の初期値となります。
・一覧情報はSelectListオブジェクトを作成しそれをsetSelectListメソッドで
登録することにより置き換えることができます。
【例】SelectList selectList = new SelectList();
selectList.add("項目 A", "A");
selectList.add("項目 A2", "A2");
selectList.add("項目 B", "B");
selectList.add("項目 C", "C");
selectList.add( "項目 D", "D");
field.setSelectList("selectItem", selectList);
・一覧項目の選択状態の変更はjavaクラスのコンストラクタやサブミットボタン等が
クリックされたときに動作するアクションメソッド内で行います。
・項目の選択状態の変更にはまずフィールドマップを取得します。
取得したフィールドマップのsetValueメソッドを使用して選択を行う項目の
送信値(VALUE値)を設定します。
【例】selectItemの送信値が"A"の項目を選択状態にする。
FieldMap field = getFieldMap();
field.setValue("selectItem", "A");
・選択されている項目の取得はアクションメソッド内でgetValueStringメソッドを
使用して行います。
【例】FieldMap field = getFieldMap();
String selectItem = field.getValueString("selectItem");
・SELECTタグは複数行の選択がmultiple属性の指定で可能です。
複数行の選択には送信値をタブコード(\t)で区切った文字列をsetValueメソッドで設定します。
また、複数行選択された時にgetValueStringメソッドで取得された文字列も
送信値がタブコード(\t)で区切られています。
ソースファイル
SelectSample.html サンプル画面のHTMLファイル
package jp.oarts.pirka.sample.instruction.is101100;
import jp.oarts.pirka.core.ctrl.SelectList;
import jp.oarts.pirka.core.kernel.FieldMap;
import jp.oarts.pirka.core.win.PirkaWindow;
/**
* pirka逆引きサンプル セレクトメニュー/リストボックスの使い方
*/
public class SelectSample extends PirkaWindow {
/**
* 値の取得ボタン処理
*/
public void getButton() {
FieldMap field = getFieldMap();
String selectItem = field.getValueString("selectItem");
field.setValue("inputValue", selectItem);
}
/**
* 値の設定ボタン処理
*/
public void setButton() {
FieldMap field = getFieldMap();
field.setValue("selectItem", "C");
}
/**
* 一覧変更ボタン処理
*/
public void changeButton() {
SelectList selectList = new SelectList();
selectList.add("新選択-B", "B");
selectList.add("新選択-C", "C");
selectList.add("新選択-D", "D");
selectList.add("新選択-E", "E");
selectList.add("新選択-F", "F");
FieldMap field = getFieldMap();
field.setSelectList("selectItem", selectList);
}
/**
* 戻るリンク処理
*
* @return
*/
public PirkaWindow returnWindow() {
return null;
}
}