12. 描画
ユーザインタフェース 12章 描画
- 12.1. java.awt.Graphics
- 12.2. 再描画
- 12.3. イメージの描画
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引数が高さです。
(実習課題1)
以下のプログラムを作成しなさい。
- ウィンドウに含まれるコンポーネントはパネルのみ。
- パネルにはサイズ一杯の6角形を描く事。