子类继承Frame,主类调用,主类paint()的文字没有 ,新手请教,求高手指点。
代码:
主方法:
public class SnakeMain {
SnakeMain sm=new SnakeMain();
Map map=new Map();
public static void main(String []args){
Map map1=new Map();
map1.LaunchFranm();
}
public void paint(Graphics g){
map.Draw(g); 《无法绘出》
Color c=g.getColor();
g.setColor(Color.RED);
g.drawString("SnakSize:+", 50, 50); 《无法绘出》
g.drawString("子弹:", 250,250); 《无法绘出》
g.setColor(c);
}
}
子方法
import java.awt.*;
public class Map extends Frame{
public void LaunchFranm(){
this.setLocation(200,200);
this.setSize(320, 450);
this.setResizable(false);
this.setVisible(true);
}
public void Draw(Graphics g){
Color c=g.getColor();
g.setColor(Color.RED);
g.drawString("SnakSize:+", 50,50);
g.setColor(c);
}
}
------解决思路----------------------
import java.awt.*;
public class SnakeMain extends Map {
public static void main(String[] args) {
new SnakeMain();
}
public SnakeMain() {
super.LaunchFranm();
}
public void paint(Graphics g) {
super.Draw(g);
Color c = g.getColor();
g.setColor(Color.RED);
g.drawString("SnakSize:+", 50, 50);
g.drawString("子弹:", 250, 250);
g.setColor(c);
}
}
class Map extends Frame {
public void LaunchFranm() {
this.setLocation(200, 200);
this.setSize(320, 450);
this.setResizable(false);
this.setVisible(true);
}
public void Draw(Graphics g) {
Color c = g.getColor();
g.setColor(Color.RED);
g.drawString("SnakSize:+", 50, 50);
g.setColor(c);
}
}
试了下,这样改一下就能画出来了。