[size=large][/size]
姗姗迟来的画图板总结啊~~其实早就想写了,但是本来是想通过画图板来练习我参数传递的本领的,但因为各阶段的学习及学校的一些事就耽误了这么长时间了。。这次来做个总结的开头吧,之后有时间定会慢慢再完善的。
先让大家看看我的成果~
大家可以看到画板实现了较多的功能,直线、矩形、多边形、椭圆、铅笔、橡皮等功能都实现了,还有14种颜色可以供我们使用。
下面来为大家简略讲解下我的画图板制作课程:
一、界面的生成
首先,当然是先实例化一个窗体对象出来,设置好窗体的各种属性:标题、大小、背景颜色等。
接着,我们可以看到,在整个的窗体上大致分成了三部分。其实这就是三个面板对象,分别是工具栏面板、画图面板、颜色面板。然后我们可以看到,在颜色面板的左下方,还有一个很小的取色面板,就相当于现实生活中画家手中的那个取色板,用左键点某个颜色,取色板后面的小按钮就会变为该颜色,如果是用右键点某个颜色,取色板前面的小按钮就会变为该颜色。还有上面有一行菜单栏,但里面具体的选项功能我都没有实现出来...很是惭愧...下面我附上这一块的代码,应该能详细描述下这些功能是怎么实现的。
姗姗迟来的画图板总结啊~~其实早就想写了,但是本来是想通过画图板来练习我参数传递的本领的,但因为各阶段的学习及学校的一些事就耽误了这么长时间了。。这次来做个总结的开头吧,之后有时间定会慢慢再完善的。
先让大家看看我的成果~
大家可以看到画板实现了较多的功能,直线、矩形、多边形、椭圆、铅笔、橡皮等功能都实现了,还有14种颜色可以供我们使用。
下面来为大家简略讲解下我的画图板制作课程:
一、界面的生成
首先,当然是先实例化一个窗体对象出来,设置好窗体的各种属性:标题、大小、背景颜色等。
接着,我们可以看到,在整个的窗体上大致分成了三部分。其实这就是三个面板对象,分别是工具栏面板、画图面板、颜色面板。然后我们可以看到,在颜色面板的左下方,还有一个很小的取色面板,就相当于现实生活中画家手中的那个取色板,用左键点某个颜色,取色板后面的小按钮就会变为该颜色,如果是用右键点某个颜色,取色板前面的小按钮就会变为该颜色。还有上面有一行菜单栏,但里面具体的选项功能我都没有实现出来...很是惭愧...下面我附上这一块的代码,应该能详细描述下这些功能是怎么实现的。
- package Simple_Draw;
- import java.awt.BorderLayout;
- import java.awt.Graphics;
- import javax.swing.JFrame;
- import javax.swing.JMenu;
- import javax.swing.JMenuBar;
- import javax.swing.JMenuItem;
- import javax.swing.UIManager;
- /**
- * 主函数类
- *
- * @author 王成威
- *
- */
- public class Draw_xp extends JFrame {
- /**
- * 主函数
- *
- * @param args
- */
- public static void main(String args[]) {
- Draw_xp dp = new Draw_xp();
- dp.showFrame();
- }
- private void showFrame() {
- this.setTitle("仿XP画板");
- this.setSize(700, 600);
- this.setDefaultCloseOperation(3);
- this.setLocationRelativeTo(null);
- // 创建工具面板对象
- Tool_panel tpl = new Tool_panel();
- this.add(tpl, BorderLayout.WEST);
- Color_panel cpl = new Color_panel();
- this.add(cpl, BorderLayout.SOUTH);
- Draw_panel dpl = new Draw_panel(tpl);
- this.add(dpl, BorderLayout.CENTER);
- // 调用创建菜单栏的方法,获取到菜单栏的对象
- JMenuBar jmb = createMenuBar();
- // 将菜单栏的对象设置为窗体的菜单栏
- this.setJMenuBar(jmb);
- this.setVisible(true);