您的位置:首页 > 编程语言 > Java开发

javax.swing.JComponent 调用顺序

2016-01-12 22:31 225 查看
网上截取的,感觉挺有用,记录下来。

http://bbs.csdn.net/topics/310041707

java swing 感觉好复杂啊…………一点都不想用但是作业要用到 >_<;

javax.swing.JComponent类中
repaint()调用update()
update()调用paint()
paint()调用paintComponent(),paintBorder(),及paintChildren()

附代码

package com.test;
import java.awt.Color;
import java.awt.Graphics;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class GamePanel extends JPanel{

private static final long serialVersionUID = 1L;
public GamePanel(){

}

public void display(){
System.out.println("GmaePanel - display");

this.repaint();
}

@Override
protected void paintComponent(Graphics g) {

System.out.println("GamePanel - ------------paintComponent");

g.setColor(new Color(0xcfcfcf));
}

@Override
public void paint(Graphics g) {
System.out.println("GamePanel - ------------paint");
super.paint(g);
}

@Override
public void update(Graphics g) {
System.out.println("GamePanel - ------------update");
super.update(g);
}

public static void main(String[] args){
JFrame frame = new JFrame();
frame.setSize(300,300);
GamePanel gp = new GamePanel();
frame.add(gp);
frame.setVisible(true);
gp.display();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: