`
wenshen22
  • 浏览: 12179 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

简单画板中蕴含的“哲理”

阅读更多



  由于很多问题需要代码才能够解释清楚,所以需要知识点的解释总结我都放到了下面的代码中,所以详情请看源码!

 

   首现看一下运行后的效果如下:(下面附有详细注解的源代码)



 

 

/**上面看到的界面就是我的画板运行需要得到的结果,大致框架流程如下:
 *
 * 1.创建窗体对象JFrame,创建按钮对象JButton,左右工具面板对象JPanel,从窗体得到的画布对象Graphics,实现监听器接口(interface)ActionListener.
 *   集成抽象(Abstract)类:MouseAdapter.不可忘记的布局管理器对象FLowLayout(java.awt.FlowLayout)(上述的这些类或接口都是javaAPI中的模板,我们
 *   需要的只是在引用时把相应的包名写在类的前面即可)
 *  


 *   一句话,在上面画板中你所能看到的想到的一切都是对象,而真正实现这些功能,把这些对象联系在一起构成一个画板则需要我们调用个对象的方法来实现
 *  


 *   a.如上图所示的整个画板的框架是一个窗体对象JFrame(javax.swing.JFrame),在这里用到的方法大致有(有些方法是从父类那里集成来的):setTitle(),
 *     setSize(),setResizable(),setVisible().....add(comp).....JFrame()[构造器]
 *    
 *    


 *   b.右边的四个按钮对象JButton(javax.swing.JButton),用到的方法集合:JButton()[构造器],addActionListener(),addMouseListener(),setText();
 *  
 *  


 *   c.左右面板对象JPanel,一个量级比JFrame轻的容器对象,因此它可以被添加到JFrame,JPanel()[构造器],setPreferSize()[注意:这个方法需要传入一个
 *     Dimension对象来为JPanel对象初始化大小]
 *  
 *  


 *   d.Graphics对象(java.awt.Graphics),这个对象是我们看不到的,但是它却在我们画各种形状时居功至伟,用到的方法:setColor(),drawLine(),drawRect
 *     (),drawOval()【注意:如果是从窗体上得到的话,Graphics对象必须在窗体设置可见之后才能够得到,否则之后我们用这个对象的引用去调用他的方法时将
 *     会出现空指针异常】
 *    
 *    


 *   e.监听器接口MouseListener(java.awt.event.MouseListener),需要实现的方法供有五个(mouseClicked(),mousePressed(),mouseReleased
 *     mouseEntered(),mouseExited())    当一个类要使用implements实现接口时,就要实现接口中的所有方法,包括我们可能用不到的
 *  
 *  


 *   f.监听器接口MouseActionListener(java.awt.MouseActionListener),需要实现的方法共一个(actionPerformed()),对于着两个接口,在API中它们的
 *     方法 是空的,需要我们自己去写,例如鼠标监听器中,需要我们自己去掉分号,自己加大括号,并且在大括号中需要我们自己写入代码,当鼠标点击时,执
 *     行大括号中的代码mouseClicked(){}
 *   

  
 *   g.监听器抽象类MouseAdapter(java.awt.event.MouseAdapter),每个方法都已经加了大括号但是,称为已经实现了方法,但是大括号中没有写代码,还是需
 *     要我们自己去写,它实现了MouseMotionListener,MouseWheelListener,MouseListener,EventListener, 与鼠标监听器接口相比,我们不需要把所有的
 *     方法都复制过来摆在那里,并写入代码,对于这个抽象类,我们只需要把我们需要用到的方法复制过来重写就行了
 *    


 *   h.布局管理器对象FlowLayout(java.awt.FlowLayout),对于这个对象在我们添加组件之前就必须提前给窗体设  置,刚学的时候很容易忘记掉滴,它管理的是

  各个组建在窗体上的排布方式  

 *    *    
 *    
 */


 

  • 大小: 38.6 KB
分享到:
评论

相关推荐

    C# 2010 简易画板

    例如,`PictureBox`控件常用于显示图像,而在这个简易画板中,可能被用来作为画布。用户的所有绘画操作都会在这个控件上进行,通过监听鼠标事件(如`MouseDown`、`MouseMove`和`MouseUp`)来捕捉用户的绘制动作。 ...

    用qt 编写简易画板

    在本文中,我们将深入探讨如何使用Qt框架来编写一个简易的画板程序。Qt是一个功能强大的C++库,广泛用于创建跨平台的图形用户界面(GUI)应用,包括绘图和多媒体应用程序。初学者可以通过这个项目了解到Qt的基本用法...

    QT做的简易画板

    在这款简易画板中,可能会有工具栏、颜色选择区、线宽选择滑块等元素。 7. **跨平台兼容性**:由于Qt的跨平台特性,这款简易画板可以在多个操作系统上运行,无需对代码进行大幅修改,增加了应用的可移植性。 总的...

    几何画板最强中文永久免费5.06版本安装包下载解压安装即可

    几何画板最强中文永久免费5.06版本安装包下载解压安装即可几何画板最强中文永久免费5.06版本安装包下载解压安装即可几何画板最强中文永久免费5.06版本安装包下载解压安装即可几何画板最强中文永久免费5.06版本安装包...

    C#简易画板

    在本文中,我们将深入探讨如何使用C#编程语言与GDI(Graphics Device Interface)来创建一个简单的画板应用。GDI是Windows操作系统提供的一种图形绘制API,它允许开发者创建和控制图形元素,如线条、形状和文本。C#...

    Android简易画板源码

    在Android开发中,创建一个简易画板应用是一个常见的练习,它可以帮助开发者深入理解自定义View的概念和绘图机制。这个源码项目就是基于这样的目的,使用了Android的自定义View来构建一个基本的画板功能,让用户可以...

    易语言简易画板

    易语言简易画板源码,简易画板,公用接口_寻找文件扩展,公用接口_复制目录,公用接口_数组到表格,公用接口_生成编号,公用接口_生成密码,公用接口_时间到文本,公用接口_数据到十六进制文本,公用接口_十六进制文本到数据,...

    MFC简易画板

    【MFC简易画板】是基于Microsoft Foundation Class (MFC) 库开发的一款简单图形编辑器,它利用VC++开发工具实现,旨在提供类似于Windows操作系统自带的“画图”程序的功能。这款应用允许用户进行基本的绘图操作,如...

    mfc简易画板程序适合新人

    在这个“简易画板”程序中,可能会有一个CView派生类,用于实现绘图功能。 描述中的“有点乱”可能指的是代码结构不清晰或组织不够完善,这在初学者编写项目时很常见,尤其是面对复杂如MFC这样的框架。不过,对于...

    一个简易画板的实现 VS2010 QT4.8做的 C++

    一个简易画板的实现 有简单的画图,画图形,改颜色功能

    简易画板.py

    使用python做的一个简易画板,能够实现画点、画直线、画多边形、画椭圆等功能,其中包含了对Tkinter的操作以及对于GUI的操作,希望对python初学者能够有所帮助

    C++程序开发基于Qt实现的简单绘画板程序源码+项目说明.zip

    C++程序开发基于Qt实现的简单绘画板程序源码+项目说明.zip 基于Qt实现的简单绘画板程序。 ## 功能介绍 - 绘制点、直线、椭圆、矩形等基本几何图形; - 存储、读取绘图文件; - 撤回、重做等功能; - 调节线宽、线条...

    基于C#的简易画板

    在这个简易画板项目中,很可能使用的是Windows Forms,因为它更适合快速构建简单的图形界面。Windows Forms 提供了丰富的控件库,如PictureBox用于显示图像,以及Paint事件处理程序,用于在画布上进行绘制。 要实现...

    简易画板.zip

    "简易画板.zip" 提供了一个简单易用的画板应用,允许用户绘制直线并选择多种颜色,这正是计算机图形绘制技术的一个基本体现。下面,我们将深入探讨这个领域的核心知识点。 首先,我们要理解什么是计算机图形。...

    matlab简易画板GUI程序

    本项目"matlab简易画板GUI程序"是一个基本的图形画板应用,用户可以在这个画板上进行简单的绘图操作,如绘制点、线、矩形和椭圆,同时支持选择颜色和线条粗细。遗憾的是,目前该程序尚未实现添加文本框的功能。 ...

    as3简易画板

    AS3简易画板是一款基于ActionScript 3.0(AS3)开发的轻量级交互式画图工具,主要用于在Flash环境中实现用户可以自由绘制线条的功能。它允许用户选择不同的颜色,通过鼠标操作在画板上绘画,为用户提供了一个简单的...

    qt之简易画板

    在这个简易画板项目中,我们将使用QMainWindow作为主窗口,提供画布区域。QMainWindow提供了菜单栏、工具栏和状态栏的集成,便于扩展功能。 1. **初始化项目** - 使用Qt Creator创建一个新的Qt Widgets ...

    Android简易画板PaintOnTouchEvent

    在Android开发中,创建一个简易画板(PaintOnTouchEvent)是一项常见的需求,它涉及到自定义View、触摸事件处理以及用户交互的设计。这个项目的核心在于如何有效地处理OnTouchEvent,以实现用户在屏幕上绘制图形的...

    java swing简单画板

    在这个"java swing简单画板"项目中,开发者利用Swing构建了一个基础的绘图应用,用户可以在此画板上执行常见的绘图操作,如绘制直线、圆、矩形、曲线,并使用橡皮擦进行擦除。下面我们将详细讨论这些知识点。 **1. ...

Global site tag (gtag.js) - Google Analytics