2011-01-03 7 views
1

私は多少の問題があります。私はクレヨンの箱を描くプログラムを書こうとしています。私はクレヨンを描くメインのアプレットから呼び出すことができるメソッドを持っていたい。現在、私のメインプログラムは次のようになります。私は今、私が作成したpoylgonを描画するための第2のプログラムが必要Javaグラフィックス複数クラス

package Crayons; 
import java.awt.Color; 
import java.awt.Polygon; 

@SuppressWarnings("serial") 
public class Crayon extends CrayonBox 
{ 


public static void drawCrayon (int x, int y, int height, Color color) 
{ 
    Polygon crayonTip = new Polygon(); 
    crayonTip.addPoint(x+15, y); 
    crayonTip.addPoint(x+46, y); 
    crayonTip.addPoint(x+62, y-62); 
    crayonTip.addPoint(x+62, y); 
    page.setColor(color); 
} 
    } 

package Crayons; 

import java.awt.Color; 
import java.awt.Graphics; 

import javax.swing.JApplet; 

@SuppressWarnings("serial") 
public class CrayonBox extends JApplet 
{ 
public void paint (Graphics page) 
{ 
    final int CENTER = 250; 
    final int SQUARE_SIZE = 31; 

    Crayon.drawCrayon(CENTER-5*SQUARE_SIZE, CENTER+5*SQUARE_SIZE, 9*SQUARE_SIZE,Color.red); 
    page.set 
} 
    } 

とクレヨンを描画するためのメソッドを持っている私の支援プログラムは、このようになります。

page.drawPolygon(crayonTip); 

page.setColor(color); 
を使用して色を変更を使用して

しかし、ページが解決できないと言われています。ページコマンドを制御することはできません。それは非常に迷惑です。あなたはこれを回避していますか?

ありがとうございます!

答えて

2

paintメソッドには、Graphicsオブジェクトが引き渡されます。これらのメソッドにpageオブジェクトを渡すことによって、このオブジェクトを任意のヘルパーメソッドに渡すことができます。 drawCrayon方法は次のようになります。

public static void drawCrayon (int x, int y, int height, Color color, Graphics page) 
{ 
    ... 
    page.setColor(color); 
} 
+0

ありがとうございます!これがうまくいくならば、私は超幸せになるだろう! – pogo2065

関連する問題