next up previous contents
Next: プログラムの実行と修正 Up: ステップ1 Previous: mouseDragged   目次

paintメソッドのオーバーライド

描画する直線のパス(あるいは,輪郭)が Shape クラスのオブジェクト path に格納 されているとする. このとき,Graphics2Dクラスのメソッド draw を用いて, 次のようにして,パネル(jPanel1)の上に線を描画することができる.
  1. 他のコンポーネントを描くなどの作業をスーパークラスのpaint メソッドで処理する
  2. Graphics2Dオブジェクトの機能を使用して図を描く
    1. 描画するパネルのGraphics2Dオブジェクトを取得する
    2. 描画色を赤色に設定する
    3. 描画する線幅を設定する
    4. pathオブジェクトに従って描画する
      • pathの設定は,マウスドラックを処理するメソッド内で 済ませておく

  public void paint(Graphics g) {  
    super.paint(g); スーパークラスの paint メソッドを呼び出す
    Graphics2D g2 = (Graphics2D)jPanel1.getGraphics(); jPanel1のGraphisを取得し,Graphics2Dに変換する
    g2.setColor(Color.RED); 描画色を赤にする
    g2.setStroke(new BasicStroke((float)8)); 線幅を8ピクセルにする
    g2.draw(path); pathに指定された図を描く
  }  



TKinoshita 2016-07-13