SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

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

Javaで軽快に使える「軽量フレームワーク」特集
~サーバーサイドとクライアントサイドのどちらでも対応できるEcho(1)

第23回

WindowPane作成の流れ

 ここでは、ウインドウとなるWindowPaneと、この中にテキストを表示するLabelをフィールドに追加してあります。そして、initメソッド内でWindowPaneインスタンスを作成しています。では、基本的な処理の流れを整理しましょう。

 WindowPaneインスタンスを作成します。これは単にnewするだけです。

dialog = new WindowPane();

 各種のプロパティを設定していきます。ここでは以下のようなメソッドを呼び出しています。

  • setTitle――ウインドウのタイトルを設定します。
  • setDefaultCloseOperation――クローズボックスを閉じた時の処理を指定します。ここでれはWindowPaneクラスにあるHIDE_ON_CLOSEを指定し、ウインドウを非表示にしています。
  • setWidth/setHeight――横幅・縦幅を指定します。引数にはExtentインスタンスを指定します。
  • setVisible――表示・非表示の設定です。falseで非表示になります。
  • setModal――ウインドウをモーダルにするかどうかを指定します。trueでモーダルになります。

 ウインドウであるWindowPaneのコンテントペインを用意します。そして、これにLabelを追加し、WindowPaneに組み込みます。

ContentPane wpane = new ContentPane();
result = new Label("");
wpane.add(result);
dialog.add(wpane);

 最後に、WindowPaneをWindowのコンテントペイン(pane)に組み込んで準備完了です。

pane.add(dialog);

 後は、WindowPaneのsetVisibleでウインドウを表示・非表示させることができます。また、ウインドウに表示されるテキストは、WindowPaneのコンテントペインに組み込んでおいたLabelにsetTextして設定すれば変更できます。

 このWindowPaneは、実際に表示してみると、タイトルバーを持って移動したり、右下部分をドラッグしてリサイズしたりと、ウインドウとしての機能を一通り持っていることが分かります。また基本的なコンテナコンテナなどの構造は、内部にコンテントペインを持ち、その中にコンポーネントを配置するなど、Windowとそっくりなことがよく分かるでしょう。

まとめ

 今回は、Echoの基本的な使い方として、Webアプリケーションの基本部分から入力・イベント処理までをざっと説明しました。またサーバーサイドだけでなく、クライアントサイドでの実装例についても触れました。

 Echoの最大の特徴は、サーバーサイドとクライアントサイドの両方でほぼ同じような実装が行えるという点ですが、実はもう一つ、非常に重要な点があります。それは、「サーバーサイドの場合、Javaのクラスだけで完結している」という点です。テンプレートも設定ファイルも一切必要とせず、ただJavaのクラスを書くだけで表示のすべてを完成できる、このようなフレームワークはあまり例を見ません。「Javaですべてを作りたい!」という人には、Echoは意外に強力な環境となるのではないでしょうか。

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
Javaで軽快に使える「軽量フレームワーク」特集連載記事一覧

もっと読む

この記事の著者

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

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

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/5446 2010/09/21 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー