众所周知,如需对组件进行一些自定义的绘制,将必须重写paintComponent方法。当组件需要绘制时,会调用该方法,但是整个绘制过程是从
paint()(由java.awt.Component中定义)开始的。
javax.swing.JComponent继承自
java.awt.Component,并将paint()方法细化为三个独立的方法:
-
protected void paintComponent(Graphics g)
-
protected void paintBorder(Graphics g)
-
protected void paintChildren(Graphics g)
一般而言,仅仅paintComponent(Graphics g)经常被重写。
一个组件的绘制过程如下:
1.paint()
调用paintComponent()
.
2.如果UI属性非空,paintComponent()
调用ui.update()。
3.如果组件的opaque属性为真,ui.udpate()
填充组件的背景色并调用ui.paint()。
4.ui.paint()渲染组件的内容。
这正是每次重写paintComponent(Graphics g)时,均需首先调用
super.paintComponent(g)。
分享到:
相关推荐
[Java Swing图形界面开发与案例详解].王鹏等.扫描版,Java Swing 中文Api
swing 中JTABLE中添加控件的例子 可以引申出添加很多控件
很全面的哟,swing中文帮助文件,让你快速掌握各种java swing控件
swing 开发 Linux和window系统解决乱码参考文档,个人总结,不喜勿碰
让Swing控件也有渐隐和渐显的效果:重写Swing的public void paint(Graphics g)方法。Swing的一切样式说白了都是利用paint方法“画”上去的,所以说Swing比较慢,当然如果我们考虑Swing主要用来做客户端显示 的,稍微...
swing中的mvc实例 mvc在swing中的体现
Eclipse中swing插件Eclipse中swing插件Eclipse中swing插件
swing-layout-1.0.3swing-layout-1.0.3swing-layout-1.0.3swing-layout-1.0.3swing-layout-1.0.3swing-layout-1.0.3swing-layout-1.0.3swing-layout-1.0.3swing-layout-1.0.3swing-layout-1.0.3swing-layout-1.0.3...
swing计算器 swing计算器swing计算器 swing计算器swing计算器 swing计算器swing计算器 swing计算器swing计算器 swing计算器 简易计算器
Day07:反射机制与内部类 Day08:异常与Swing图形界面 Day09:swing图形界面与AWT事件模型 Day10:JFC基础类库(具体类查看API) Day11:多线程-进程与线程及方法 Day12:线程机制与I/O流的方法 Day13:I/O流的类与...
swing 教程swing 教程swing 教程swing 教程swing 教程swing 教程swing 教程swing 教程swing 教程
(java)Swing中弹出对话框的几种方式
反射在Java Swing编程中的应用
用Swing中实现小球, 控制小球数量, 算法
本文档是 Java 2 Platform Standard Edition 5.0 的 API 规范。完全中文,有用的可以下载
很好的一个中文帮助API,易于学习和开发过程中遇到问题的查看
Java Html DJNativeSwing.jar DJNativeSwing-SWT.jar
用Java程序读取Excel表格里的内容并显示在Swing界面里。
swing中的jlist 代码中定义了两个jlist 从一个jlist双击列表项可以将该项从这个列表删除并添加至另外一个列表中去
java 编写 的基于 swing 的桌面托盘