XP画板总结

来源:互联网 发布:tensorflow restore 编辑:程序博客网 时间:2024/04/26 06:41

XP画板
1. 主要组件:JFrame、JPanel、JLabel、JButton、JRadioButton、Graphics等。
2. 命名:
 定义类:类名每个单词首字母全部大写
 定义函数/属性:除了第一个单词的首字母小写,其他的全部大写
3. 构造方法传参
4. 画笔:
 哪里需要就从哪里拿
 画笔获取必须在窗体的setVisible之后获取
 强制转型为子类(Graphics2D)
5. 多态:多个同一个类型的对象,调用同一个方法的时候,执行过程不一样。
 前提是方法重写与自动转型。
 如:父类MyShape 子类MyLine、MyRect、MyOval等。
创建子类对象时,自动转型为父类类型;并对父类的draw方法进行重写。
所以在调用父类draw方法时,能画出不同的图形。
6. 监听:ActionListener,MouseListener,MouseMotionListener
 ActionListener用于监听底部颜色按钮
 MouseListener用于监听鼠标的点击与释放,并获取坐标
 MouseMotionListener主要用于监听鼠标的拖动,实现铅笔刷子橡皮等功能
7. 封装:将鼠标点击与释放的坐标封装为MyShape的对象,并将MyShape的对象存入ArrayList中,以便数据的提取。
8. 随机类
 Random 属java.util包
 Random ran =new Random();//定义Random类型对象ran
ran.nextInt(100);// ran的取值范围为0~9
9. 机器人类
 Robot 属java.awt包
 提供自动化操作:鼠标操作、键盘操作、截屏等功能
 主要使用截屏功能,用于实现画板的取色器功能
10. 专门用于封装数据的类:
 BasicStroke:封装一个数值
 Dimension: 封装宽、高
 Point:封装x、y
 Rectangle:封装x、y、宽、高
11. 重绘
 使用paint方法
 super.paint(g);

原创粉丝点击