SHOEISHA iD

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

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

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

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

第23回

  • X ポスト
  • このエントリーをはてなブックマークに追加

画面作成の流れを整理する

 では、作成したHeloAppの処理を見ていきましょう。ここでは「init」というメソッドが1つだけ用意されています。これはApplicationInstanceに用意されているメソッドで、インスタンスの初期化処理を行うためのものです。ここで、表示するWebページの内容を作成しておけばよいのです。ApplicationInstanceのGUI表示は、いくつかのクラスの組み合わせによって作成されます。基本的な構成を整理すると以下のようになります。

  • まず、Windowクラスのインスタンスを用意します。これが、表示されるGUI画面のコンテナとなります。
  • ContentPaneを用意し、Windowに設定します。このContentPane内に、表示されるコンポーネントを組み込みます。ただし、このContentPaneに組み込むコンポーネントは基本的に1つです。複数のコンポーネントを組み込む場合は、そのためのコンテナを用意します。
  • 今回は、Columnというクラスのインスタンスを用意し、ContentPaneに組み込んでいます。このColumnは、複数のコンポーネントを縦に並べて配置するコンテナです。
  • Columnに表示するコンポーネントを作成し、組み込んでいきます。今回は、テキストを表示するLabelインスタンスを用意しています。

 このように、いくつもの部品が組み合わせられて画面を構成しています。Window・ContentPaneは、どのような場合でも必ず用意する必須オブジェクトです。そして、Column・Labelは、今回の「複数のテキストを縦に並べて表示する」というためのコンテナ・コンポーネントとなるわけです。これらのコンポーネントは、コンテナの「add」メソッドを使って順に組み込んでいきます。

コンポーネントのプロパティについて

 コンポーネントは、それぞれ表示や動作に関するプロパティをもっており、それらを設定することで表示や振る舞いを変更することができます。今回、使用しているプロパティについて以下に整理しておきましょう。

背景色

 これは、backgroundというプロパティとして用意されており、「setBackground」メソッドで設定することができます。引数にはColorインスタンスを渡します。ただし、これはjava.awt.Colorではないので注意してください。nextapp.echo.app.Colorという、Echo用に独自に用意されたColorクラスを使用します。使い方は、java.awt.Colorとほぼ同じなので迷うことはないでしょう。

フォント

 これは、fontプロパティとして用意されており「setFont」メソッドで設定できます。これも、やはりnextapp.echo.app.Fontという独自に用意されているクラスを使って設定します。このFontは、java.awt.Fontと引数が微妙に異なるので注意が必要です。

new Font( Typeface , int , Extent )

 第1引数はフォントの種類を指定するもので、これは「Typeface」というクラスのインスタンスを用意します。Fontクラスには、あらかじめよく用いられるTypefaceがクラスフィールドとして用意されており、それを利用して値を指定します。第2引数にはスタイルを示すint値を用意します。これもFontクラスにあるクラスフィールドを使って指定するのが基本です。第3引数にはフォントの大きさを示す「Extent」クラスのインスタンスを用意します。これは、引数にフォントの大きさを示すintを用意してnew Extentします。

 いかがですか。ざっとコンポーネントの作成から組み込みまでを見てみましたが、awt/Swingなどのコンポーネントの組み込みと非常によく似ていることが分かるでしょう。また使用するクラスなども、awtではなく独自に用意されているとはいえ、使い方はawtのものとそっくりです。すでにJavaのawt/Swingを使っていれば、基本的な使い方はすぐに習得できるでしょう。

次のページ
クライアントサイドの実装例

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

  • X ポスト
  • このエントリーをはてなブックマークに追加
Javaで軽快に使える「軽量フレームワーク」特集連載記事一覧

もっと読む

この記事の著者

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

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

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

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

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/5446 2010/09/21 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング