背景を塗りつぶす

広告

現在はデフォルトの背景色が表示されていますが、画面全体を好きな色で塗りつぶす方法も確認しておきます。

GraphicsクラスにはclearRectメソッドという背景色で画面全体を塗りつぶすというメソッドも用意されているのですが、設定されている背景色が環境によって異なるため、背景色を任意の色で塗りつぶす場合にはアプレットの描画領域の大きさを取得し、fillRectメソッドで塗りつぶしを行うようにして下さい。

例えば下記のように使います。

public void paint(Graphics g){
  Dimension size = getSize();

  g.setColor(Color.blue);
  g.fillRect(0, 0, size.width - 1, size.height - 1);
}

※領域の大きさを取得するgetSizeメソッドについては、『アプレットのサイズを取得』を参照して下さい。

サンプルプログラム

では実際に試してみます。

GraphicsTest11.java

import java.applet.Applet;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.Dimension;

/*
<applet code="GraphicsTest11.class" width="150" height="150">
</applet>
*/

public class GraphicsTest11 extends Applet{
  public void paint(Graphics g){
    Dimension size = getSize();

    g.setColor(Color.blue);
    g.fillRect(0, 0, size.width - 1, size.height - 1);

    g.setColor(Color.red);
    g.drawRoundRect(20, 20, 120, 70, 5, 10);
  }
}

実際にブラウザで見てみた結果は下記の通りです。

背景色を塗りつぶす

下記で実際に試して頂くことができます。

GraphicsTest11.html

( Written by Tatsuo Ikura )