目次へ

12. 描画

12.1. java.awt.Graphics

任意の図形や文字を描画したい場合には、「JComponent」クラスが持つ「paint」メソッドをオーバーライドします。全てのSwingコンポーネントは「JComponent」クラスを拡張したクラスですので、このメソッドを持っています。このメソッドの引数である「Graphics」クラスのインスタンスを使用して描画を行います。例えば以下のサンプルではパネルにサイズ一杯の円を書いています。

public class SamplePanel extends JPanel{
  ...
  
  public void paint(Graphics g){
    Dimension dim=getSize();
    g.drawOval(0,0,dim.width,dim.height);
  }
}

「Graphics」オブジェクトはその時点で設定されている色で描画を行います。デフォルトはコンポーネントの「getForeground」メソッドで返される色です。「drawOval」は楕円を書くメソッドで、第1引数が左上の点のx座標、第2引数がy座標、第3引数が幅で第4引数が高さです。

「drawOval」イメージ

(実習課題1)

以下のプログラムを作成しなさい。

  • ウィンドウに含まれるコンポーネントはパネルのみ。
  • パネルにはサイズ一杯の6角形を描く事。

解答例はこちら

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp