awtコンポーネントのデザイン

awtコンポーネントの色やフォントなど 基本的なデザインを指定する方法を説明します。


コンポーネントのクラスは全て Componentクラスを先祖とします。
Button などの部品、 Panel や Applet クラスも、以下に説明する 性質を Componet クラスから継承しています。 特に色やサイズなどの基本的なデザインを指定する方法は、 サブ・クラスの中で変更されないので、すべてのコンポーネントの クラスに共通の取り扱いができます。 例として Button クラスを用いて説明しますが、同じ方法は 他のクラスでも使えるわけです。



   /** インターフェイスの部品の宣言 */ 

      public Button greenButton;

   /** フォントと色の宣言 */ 

      public Font  italicFont;
      public Color ivory, forestGreen;

   /** 初期設定の関数 */

      public void init() {

           ivory = new Color( 250, 250, 235 );         // RGB の値を指定
           this.setBackground( ivory );                // 背景色の設定

           greenButton = new Button( "Green" );
           forestGreen = new Color( 35, 140, 35 );    // RGB の値を指定
           greenButton.setBackground( forestGreen );  // 背景色の設定
           greenButton.setForeground( Color.white );  // 前景色の設定
           italicFont = new Font( "TimesRoman", Font.ITALIC, 24 );
           greenButton.setFont( italicFont );         // フォントの設定
           add( greenButton );
      }


Componentのサブ・クラスに共通するデザインの操作
名称 機能
setForeground( Color ) 前景色の設定
Color getForeground() 前景色の取り出し
setBackground( Color ) 背景色の設定
Color getBackground() 背景色の取り出し
setFont( Font ) フォントの設定
Font getFont() フォントの取り出し
FontMetrics getFontMetrics() フォント・メトリックの取り出し
*設定はフォントの設定時に
自動的に行われる
resize( int, int )
resize( Dimension )
サイズの設定
Dimension size() サイズの取り出し
show() 表示させる
hide() 表示をやめる
enable() 操作可能にする
disable() 操作不可能にする

*コンポーネントのサイズは、ボタンのラベル文字列や入力アイテムの文字数 に合わせて自動的に調整されます。 ただし、どのようなポリシーで調整されるかは awt の実装ごとに異なります。 また resize() のメソッドによる指定よりも、自動調整のサイズが優先される こともあるので注意が必要です。