publicclassMyTankWar04extendsFrame{publicMyTankWar04(){Framef=newFrame();f.setTitle("我的練習-坦克大戰");//命名f.setBounds(200,200,800,500);//設定視窗的位置以及大小f.setB...
public class MyTankWar04 extends Frame {
public MyTankWar04(){
Frame f=new Frame();
f.setTitle("我的練習-坦克大戰");//命名
f.setBounds(200, 200,800, 500);//設定視窗的位置以及大小
f.setBackground(Color.BLUE);//設定背景顔色
f.setVisible(true);//設定視窗為可見
f.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);//system退出方法的使用
}//添加視窗監聽器,直接使用匿名類實作,簡化程式設計
});
f.setResizable(false);//視窗不能改變
}
@Override
public void paint(Graphics g) {//繪制容器
Color c=g.getColor();//獲得顔色
g.setColor(new Color(255,0,0));//設定顔色
g.fillOval(100, 100, 50, 50);//運用Graphics的方法畫一個實心圓
g.setColor(c);//恢複原來的顔色
}
public static void main(String[] args) {
// TODO Auto-generated method stub
new MyTankWar04();//建立一個類執行個體,自動調用其構造方法
}
}
------------------------------
出現的問題:沒意識到本類已繼承frame類,自己本身就是一個frame,還在裡面寫了一個frame,是以最後寫paint方法時,圖檔,顯示不出來,是不是自己又寫的那個frame把原來的frame給覆寫了,是以看不到了?還有如果是在此基礎之上,要往建立的那個frame中畫圖形怎麼寫paint方法呢,或者是怎麼調用呢?
現在處于java初級階段啦,希望哪位大神能指導指導,謝謝啦
展開