CodeZine(コードジン)

特集ページ一覧

Javaで軽快に使える「軽量フレームワーク」特集
低い学習コストを重視した「Apache Click」 (1)

第4回

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2009/11/26 14:00

目次

その他のコントロールを使う

 では、基本がわかったところで、フォームで使うその他のコンポーネントも使ってみることにしましょう。主なコントロールとして、HTMLのフォームにあるチェックボックスラジオボタン選択リストを使ってみます。これらは、それぞれ次のようなコントロールとして用意されています。

チェックボックス

 「Checkbox」というクラスとして用意されています。getValueでは、選択されていると"true"というテキストが返されます。

ラジオボタン

 「Radio」というクラスとして用意されています。ただし、ラジオボタンは複数のものをグループ化して使用しますので、これ単体をFormに組み込んで使うことはありません。これとは別に、複数のRadioをグループ化して管理する「RadioGroup」というクラスがあり、これにRadioを組み込んで使用します。現在選択されているラジオボタンは、このRadioGroupのgetValueで得ることができます。

選択リスト

 「Select」というクラスとして用意されています。これには「setMultiple」というメソッドが用意されており、これがfalseの場合は1つの項目だけが選択され、プルダウンリストとして表示されます。trueの場合は複数項目が選択可能となり、一覧リストとして表示されるようになります。表示する項目は、addでテキストを組み込んで作成します。

 では、これらを実際に使った簡単なフォームを作成してみましょう。HeloPage.javaのソースコードを次のように修正してください。

package jp.codezine.click;

import org.apache.click.Page;
import org.apache.click.control.*;

public class HeloPage extends Page {
	public String msg = "";
	public Form form;
	private Checkbox check;
	private RadioGroup group;
	private Select select;
	private Submit submit;
  
	public HeloPage(){
form = new Form("form"); check = new Checkbox("check", "チェック"); form.add(check); group = new RadioGroup("group","ラジオ",true); Radio r1 = new Radio("Windows","Windows"); Radio r2 = new Radio("Linux","Linux"); Radio r3 = new Radio("Mac OS X","Mac OS X"); group.add(r1); group.add(r2); group.add(r3); form.add(group); select = new Select("select","選択",true); select.add("-"); select.add("東京"); select.add("埼玉"); select.add("千葉"); select.add("神奈川"); form.add(select); submit = new Submit("submit", "送信"); form.add(submit); } @Override public void onPost(){ msg = ""; msg += "チェック:" + check.getValue() + "<br>"; msg += "ラジオ:" + group.getValue() + "<br>"; msg += "選択:" + select.getValue() + "<br>"; } }
チェックボックス、ラジオボタン、プルダウンリストを表示したところ
チェックボックス、ラジオボタン、プルダウンリストを表示したところ

 ブラウザからアクセスすると、チェックボックス、ラジオボタン、プルダウンリストがそれぞれ表示されます。これらを適当に選択して送信すると、送信された内容がメッセージとして表示されます。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

修正履歴

  • 2009/11/26 19:18 ※onInit関連の記述に誤りがありました。リストおよび本文を修正致しました。

バックナンバー

連載:Javaで軽快に使える「軽量フレームワーク」特集

もっと読む

著者プロフィール

  • 掌田 津耶乃(ショウダ ツヤノ)

    三文ライター&三流プログラマ。主にビギナーに向けたプログラミング関連の執筆を中心に活動している。 ※現在、入門ドキュメントサイト「libro」、カード型学習サイト「CARD.tuyano.com」を公開中。またGoogle+プロフィールはこちら。

あなたにオススメ

All contents copyright © 2005-2022 Shoeisha Co., Ltd. All rights reserved. ver.1.5