当前位置: 技术问答>java相关
在JPanel上画圆,如下代码为何不对?
来源: 互联网 发布时间:2015-05-19
本文导语: import java.awt.*; import java.applet.*; import javax.swing.*; public class PanelDraw extends JApplet { JPanel jp=new JPanel(); public void init(Graphics g) { jp.setBackground(Color.gray); getContentPane().add(jp); jp.paintComponent(g); g.setCol...
import java.awt.*;
import java.applet.*;
import javax.swing.*;
public class PanelDraw extends JApplet
{
JPanel jp=new JPanel();
public void init(Graphics g)
{
jp.setBackground(Color.gray);
getContentPane().add(jp);
jp.paintComponent(g);
g.setColor(Color.blue);
g.drawOval(100,100,50,50);
}
}
import java.applet.*;
import javax.swing.*;
public class PanelDraw extends JApplet
{
JPanel jp=new JPanel();
public void init(Graphics g)
{
jp.setBackground(Color.gray);
getContentPane().add(jp);
jp.paintComponent(g);
g.setColor(Color.blue);
g.drawOval(100,100,50,50);
}
}
|
你写一个
public void init(Graphics g){}
java就能按你的要求调用了吗.
你的问题涉及到swing组件的调用次序,你直接取panel的graphics,
可能取不到,为null,而应该由panel的父组件初始化后,再它调用Panel的
update(Graphics g)方法.
public void init(Graphics g){}
java就能按你的要求调用了吗.
你的问题涉及到swing组件的调用次序,你直接取panel的graphics,
可能取不到,为null,而应该由panel的父组件初始化后,再它调用Panel的
update(Graphics g)方法.