Java图形多类
我有个小问题。我想写一个程序,画一盒蜡笔。我想有一个方法,我可以从一个画蜡笔的主小程序调用。目前,我的主程序如下所示:Java图形多类,java,swing,graphics,Java,Swing,Graphics,我有个小问题。我想写一个程序,画一盒蜡笔。我想有一个方法,我可以从一个画蜡笔的主小程序调用。目前,我的主程序如下所示: package Crayons; import java.awt.Color; import java.awt.Graphics; import javax.swing.JApplet; @SuppressWarnings("serial") public class CrayonBox extends JApplet { public void paint (Gra
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
}
}
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
}
}
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);
}
}
我现在需要第二个程序来绘制我使用
page.drawPolygon(crayonTip);
并使用
page.setColor(color);
但是它说页面无法解析。因此,它无法控制page命令。这很烦人。有办法解决这个问题吗
谢谢 将
paint
方法传递给Graphics
对象以处理绘图。通过将页面
对象传递给任何帮助器方法,可以将此对象传递给这些方法。然后,您的drawCrayon
方法变为:
public static void drawCrayon (int x, int y, int height, Color color, Graphics page)
{
...
page.setColor(color);
}