我正在使用eclipse。
我的代码:
import javax.swing.JApplet;
import java.awt.*;
public class Einstein extends JApplet
{
public void pain(Graphics page)
{
page.drawRect(60,60,40,40); // Square
page.drawString("Out of clutter, find simplicity. " , 110, 70);
}
}
小程序中没有显示矩形和文本。 可能是什么问题?
答案 0 :(得分:2)
public void pain(Graphics page)
- 有趣的命名选择...
我相信您正在寻找的方法是paint
@Override
public void paint(Graphics g) {
super.paint(g);
//...
}
确保在执行任何自定义绘画之前调用super.paint
,否则最终可能会出现一堆令人讨厌的绘画文物。
说完了。考虑使用自定义组件,例如从JPanel
扩展,然后覆盖它的paintComponent
方法,然后将此组件添加到您的小程序。
您可以免费获得Swing的双缓冲支持以及将组件移动到另一个容器的自由,例如JFrame
或其他容器,使其更易于重复使用