import java.awt.*;
public class guitest2 extends Frame
{
public guitest2()
{
setTitle("ButtonTest");
Panel p=new Panel();
p.setLayout(new FlowLayout());
p.add(new Button("Yellow"));
p.add(new Button("red"));
p.setBackground(Color.blue);
add("North",p);
ovalcanvas ovalcan=new ovalcanvas();
add("South",ovalcan);
ovalcan.setSize(400,400);
}
public boolean handleEvent(Event evt)
{
if(evt.id==Event.WINDOW_DESTROY)System.exit(0);
return super.handleEvent(evt);
}
public boolean action(Event evt,Object arg)
{
if(arg.equals("Yellow"))setBackground(Color.yellow);
else if(arg.equals("red"))setBackground(Color.red);
repaint();
return true;
}
public static void main(String[] args)
{
Frame f=new guitest2();
f.resize(600,500);
f.setBackground(Color.white);
f.show();
}
}
class ovalcanvas extends Canvas
{
public void paint(Graphics g)
{
//g.drawString("ovalcanvas",100,100);
g.setColor(Color.black);
//g.drawOval(200,200,300,300);
g.drawOval(100,100,200,200);
}
}
画不出来的原因是你的中间那个面板把下面一个挤的看不见了!
public class guitest2 extends Frame
{
public guitest2()
{
setTitle("ButtonTest");
Panel p=new Panel();
p.setLayout(new FlowLayout());
p.add(new Button("Yellow"));
p.add(new Button("red"));
p.setBackground(Color.blue);
add("North",p);
ovalcanvas ovalcan=new ovalcanvas();
add("South",ovalcan);
ovalcan.setSize(400,400);
}
public boolean handleEvent(Event evt)
{
if(evt.id==Event.WINDOW_DESTROY)System.exit(0);
return super.handleEvent(evt);
}
public boolean action(Event evt,Object arg)
{
if(arg.equals("Yellow"))setBackground(Color.yellow);
else if(arg.equals("red"))setBackground(Color.red);
repaint();
return true;
}
public static void main(String[] args)
{
Frame f=new guitest2();
f.resize(600,500);
f.setBackground(Color.white);
f.show();
}
}
class ovalcanvas extends Canvas
{
public void paint(Graphics g)
{
//g.drawString("ovalcanvas",100,100);
g.setColor(Color.black);
//g.drawOval(200,200,300,300);
g.drawOval(100,100,200,200);
}
}
画不出来的原因是你的中间那个面板把下面一个挤的看不见了!
我也是刚学,不是对否,请各位大师指点