awt 学习笔记2
表2-2 通常使用的Component方法
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Component显示方法 说明
─────────────────────────────────
paint() 绘制构件
repaint() 尽可能早地调度构件的update方法调用
update() 重画构件,默认方案为刷新屏幕并调用paint方法
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
组合的start版本
既可以以applet的形式运行,也可以以application方式运行
?
import java.applet.Applet;import java.awt.Frame;import java.awt.Label;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class StarterCombined extends Applet { Label text = new Label("Starter"); @Override public void destroy() { // TODO Auto-generated method stub System.out.println("StarterCombined::destroy()"); super.destroy(); } @Override public void init() { // TODO Auto-generated method stub System.out.println("StarterCombined::init()"); super.init(); } @Override public void start() { // TODO Auto-generated method stub System.out.println("StarterCombined::start()"); this.add(text); super.start(); } @Override public void stop() { // TODO Auto-generated method stub System.out.println("StarterCombined::stop()"); this.remove(text); super.stop(); } public static void main(String[] args) { StarterCombinedFrame app = new StarterCombinedFrame("Combined starter"); app.setSize(300, 100); app.setVisible(true); System.out.println("StarterCombined::main()"); } } class StarterCombinedFrame extends Frame{ public StarterCombinedFrame(String frameTitle){ super(frameTitle); StarterCombined applet = new StarterCombined(); applet.start(); this.add(applet,"Center"); this.addWindowListener( //内部类,监听windows关闭事件 new WindowAdapter() { public void windowClosing(WindowEvent e){ dispose(); System.exit(0); } } ); } }?
?
StarterCombined继承applet
StarterCombinedFrame继承Frame
StarterCombined中有main方法,这样可以以application方式运行,运行时用另一个类StarterCombinedFrame来实现具体功能,最终完成整个要求!
?
?