Java JApplet倒退不起作用
我想知道为什么setBackground()方法实际上没有使背景变黑。我觉得这与实现JApplet的类有关,而不是Applet,但我无法理解具体细节。我真的很烦。感谢您的帮助Java JApplet倒退不起作用,java,swing,graphics,japplet,setbackground,Java,Swing,Graphics,Japplet,Setbackground,我想知道为什么setBackground()方法实际上没有使背景变黑。我觉得这与实现JApplet的类有关,而不是Applet,但我无法理解具体细节。我真的很烦。感谢您的帮助 import javax.swing.*; import java.awt.*; public class Rocket extends JApplet { private final int APPLET_WIDTH = 200; private final int APPLET_HEIGHT = 20
import javax.swing.*;
import java.awt.*;
public class Rocket extends JApplet
{
private final int APPLET_WIDTH = 200;
private final int APPLET_HEIGHT = 200;
private int[] xRocket = {100, 120, 120, 130, 130, 70, 70, 80, 80};
private int[] yRocket = {15, 40, 115, 125, 150, 150, 125, 115, 40};
private int[] xWindow = {95, 105, 110, 90};
private int[] yWindow = {45, 45, 70, 70};
private int[] xFlame = {70, 70, 75, 80, 90, 100, 110, 115, 120, 130, 130};
private int[] yFlame = {155, 170, 165, 190, 170, 175, 160, 185, 160, 175, 155};
public void init ()
{
setBackground (Color.black);
setSize (APPLET_WIDTH, APPLET_HEIGHT);
}
public void paint (Graphics page)
{
page.setColor (Color.cyan);
page.fillPolygon (xRocket, yRocket, xRocket.length);
page.setColor (Color.gray);
page.fillPolygon (xWindow, yWindow, xWindow.length);
page.setColor (Color.red);
page.drawPolyline (xFlame, yFlame, xFlame.length);
}
}
在
ContentPane
上设置颜色,而不是在父小程序组件上设置颜色
getContentPane().setBackground(Color.BLACK);
旁白:
用于在Swing override
paintComponent
而非paint
中进行自定义绘制JApplet
不是JComponent
的子类,因此需要一个基于它的新组件来完成这项工作。确保调用super.paintComponent(g)
私有final int APPLET_WIDTH=200代码>小程序的大小在加载它的HTML中设置。不要试图在代码中强制使用大小。谢谢!我现在有一个新问题。我按照您的指示操作,现在小程序生成一个黑色页面。由于“找不到符号”错误,方法super.paintComponent(g)未编译。原因是什么?如上所述,JApplet
不扩展JComponent
,因此需要创建一个扩展JComponent
的新类。如果不是这个问题,请将新代码附加到您的问题。