1、创建一个登陆窗口:
步骤: 1.定义一个QQFrame,让该类继承自JFrame。
2.在QQFrame类中定义主函数和初始化界面的方法。
3.在主函数中实例化QQFrame类的对象,调用初始化界面的方法。
4.在初始化界面的方法中,设置窗体的属性值(标题,大小,位置、可见,...)
5.创建容器或者元素控件添加到JFrame上。
2、实现点击登陆按钮时,弹出一个“创意画板”的界面:
创意画板界面的设置与上大体相同,不再赘述
首先需要创建QQListener( ActionListener接口)的对象再给事件源jbu添加动作监听器方法。
完成这步需要建一个QQListener类实现ActionListener接口,并重写接口中的抽象方法。
代码:
public class QQListener implements ActionListener{ //重写接口中的抽象方法(事件处理方法) public void actionPerformed(ActionEvent e) { System.out.println("您点击了"+e.getActionCommand()+"按钮"); //创建QQ的对象 QQ qq=new QQ(); //调用画板方法 qq.DrawBorder(); } }
注:实现接口的关键字:implements
格式:
public class 类 (extends 类) implements 接口 (先继承再实现){
//定义属性
//定义构造方法 普通方法
当类实现接口后,必须实现(重写)接口中的所有抽象方法,否则报错
}
3、实现在创意画板中单击鼠标画出椭圆的操作:
在这一步需要建一个DrawListener类实现MouseListener接口并实现其中所有的
抽象方法,但要实现画图操作还得在QQ类中的DrawBorder窗体方法(事件源)
里获取窗体的Graphics对象,由于抽象类中不能new对象,只能取,并且需要在窗体可见
之后获取其画笔对象 所以代码为:Graphics g=this.getGraphics();
并创建MouseListener的子类DrawListener的对象 给事件源添加鼠标监听器方法:
DrawListener l=new DrawListener(g);
this.addMouseListener(l);
以下是DrawListener类的代码:
public class DrawListener implements MouseListener{ //声明一个Graphics类型的对象属性 private Graphics g; //构造方法 从QQ传过来的画笔对象 public DrawListener(Graphics g){ this.g=g; } public void mouseClicked(MouseEvent e) { int x; int y; x=e.getX(); y=e.getY(); //g.drawRect(x, y, 150, 150); g.drawOval(x, y, 120, 150); g.drawArc(x+20, y+30, 50, 50, 30, 30); } public void mousePressed(MouseEvent e) { } public void mouseReleased(MouseEvent e) { } public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } }
只有组件才能成为事件源对象即动作响应的位置。
以下是我的登陆窗口和创意画板窗口的代码:
//1.定义一个QQFrame,让该类继承自JFrame。
public class QQ extends JFrame{ //2.在QQFrame类中定义主函数和初始化界面的方法。 //程序入口 public static void main(String[] args) { //3.在主函数中实例化QQFrame类的对象,调用初始化界面的方法。 QQ qq=new QQ(); //调用对象的方法 qq.initUI(); } //创建一个窗体界面的方法 public void initUI(){ //4.在初始化界面的方法中,设置窗体的属性值(标题,大小,位置,可见,...) //创建流式布局对象!!! FlowLayout fl=new FlowLayout(); //加到界面上 this.setLayout(fl); this.setTitle("登录");//设置标题 this.setSize(300, 200);//设置大小 this.setLocationRelativeTo(null);//居中 //5.创建容器或者元素控件添加到JFrame上。 //添加标签:账号 javax.swing.JLabel jlb1=new javax.swing.JLabel("账号"); this.add(jlb1); //输入框 JTextField jt=new JTextField(20); this.add(jt); //添加标签:密码 javax.swing.JLabel jlb2=new javax.swing.JLabel("密码"); this.add(jlb2); //输入框 JTextField jt1=new JTextField(20); this.add(jt1); //添加按钮:登录 JButton jbu=new JButton("登录"); this.add(jbu); this.setVisible(true);//置于最后 让窗体显现 this.setDefaultCloseOperation(3);//关闭窗体时 退出程序 //创建QQListener( ActionListener接口)的对象 QQListener ql=new QQListener(); //给事件源jbu添加动作监听器方法 jbu.addActionListener(ql); } //创意画板 public void DrawBorder(){ this.setTitle("创意画板"); this.setSize(800, 800); this.setLocationRelativeTo(null);//居中 this.setVisible(true); //获取窗体上的Graphics对象 抽象类中不能new对象 只能取 Graphics g=this.getGraphics(); //创建MouseListener接口的子类DrawListener 的对象 DrawListener l=new DrawListener(g); //给事件源添加鼠标监听器方法 this.addMouseListener(l); } }
至此可实现:程序运行出现一个登陆窗口,点击登陆按钮出现一个创意画板窗口,在创意画板上能够画圆。
梣梓
2014、09、25
相关推荐
运用用户界面事件结构,模拟一个简单的画图板功能。它有4个功能选项:点(point)、线(line)、圆(circle)和椭圆(oval),一次完成的绘画过程是:在画布上单击鼠标开始绘制→按住鼠标的同时在画布上拖动鼠标→在...
本文将详细介绍如何使用一个基于Java技术的Web画板插件,以及如何将其与视频教学项目相结合。 首先,让我们了解一下“web点击按钮事件弹出画板功能”。在网页中,我们可以使用JavaScript或jQuery等库来监听按钮的...
其中,“画板应用事件”是易语言编程中一个重要的概念,它涉及到图形界面(GUI)设计与用户交互的实现。本文将深入探讨这一主题,包括画板的基本操作、事件处理机制以及如何利用这些功能进行统计和显示大数量级数据...
Java创意画板可能使用了JFrame作为主窗口,JPanel作为画布,并可能使用了事件监听器来响应用户的输入,如鼠标点击和拖动。 5. 多线程:为了实现流畅的用户体验,Java创意画板可能会使用多线程。例如,复杂的图像...
通过这个“画板”程序,初学者可以学习到LabVIEW的基本编程概念,包括图形化编程、用户界面设计、事件处理、以及如何使用LabVIEW的内置图形API。对于有经验的LabVIEW开发者来说,这可能是一个展示自定义绘图功能和...
【文件名称】:“画板项目总结.ppt”是一个PowerPoint演示文稿,通常包含幻灯片形式的总结内容,可能包括项目概述、技术选型、架构设计、功能模块介绍、界面展示、性能优化等方面的详细信息。读者可以通过这个PPT...
总结,易语言画板应用事件是构建图形界面程序的重要组成部分,通过合理利用这些事件,开发者可以创建出富有交互性和创新性的应用程序。无论是初学者还是经验丰富的开发者,都应该熟练掌握这一核心技术,以提升自己的...
在提供的源码文件“易语言画板控件的功能应用与事件源码”中,开发者可以找到具体的代码实现。通过学习和理解这段源码,可以更好地掌握易语言画板控件的使用方法,从而在自己的项目中灵活运用。 总结来说,易语言...
总结来说,"易语言画板自绘界面"是一个涵盖了图形用户界面设计、事件处理、图形绘制等多个方面的项目。开发者需要掌握易语言的基本语法、控件操作、图形绘制函数,以及事件驱动编程的概念,才能创建出功能完整、交互...
易语言源码易语言画板控件的功能应用与事件源码.rar 易语言源码易语言画板控件的功能应用与事件源码.rar 易语言源码易语言画板控件的功能应用与事件源码.rar 易语言源码易语言画板控件的功能应用与事件源码.rar ...
4. **源码分析**:博客中的链接可能提供了具体的代码实现,通过阅读源码,读者可以学习到如何将图形界面与事件处理结合,以及如何有效地保存和加载图形数据。这包括类的设计、对象的实例化、方法的调用等方面的知识...
在IT行业中,开发一个简单的画板应用是一项常见的任务,它涉及到图形用户界面(GUI)设计、事件处理以及绘图技术。下面将详细讲解这个过程,包括核心知识点和可能遇到的技术难点。 首先,画板的基本功能通常包括...
2. **事件处理**:学习如何编写事件处理程序,例如鼠标点击事件、键盘按键事件,以及如何将这些事件与画板上的字符输入关联起来。 3. **画板绘图**:掌握在画板上绘制字符的基本方法,包括选择字体、颜色、大小,...
在易语言中,我们可以创建一个窗口程序,并在其上添加画板控件,用户可以通过鼠标或键盘与之交互。 透明度调整涉及到的是图像的Alpha通道。Alpha通道是RGB颜色模型的一个扩展,用于表示像素的透明程度。0代表完全...
总结来说,"opencv画板功能实现源程序"项目通过OpenCV提供的图形绘制函数和鼠标事件处理,实现了让用户在交互式窗口上自由绘画的功能。项目中可能涉及多个Python模块,每个模块负责不同的功能,如主程序控制、画板...
在Android开发中,触摸事件(Touch Events)是用户与设备交互的重要方式,特别是在移动设备上。本节将探讨如何在Android应用中处理触摸事件,并通过一个简单的“小小画板”实例来阐述其基本原理。 首先,Android的...
【网络画板和聊天】是基于Java技术开发的一款集在线画图与实时聊天功能于一体的软件。这个项目展示了Java在网络通信和图形用户界面设计上的强大能力,同时也为用户提供了一个创新的协作平台。 首先,我们要理解...
一个简单的画板,黑大软体实验二,对学java会有帮助
【标题】"完整的安卓画板源代码 Android小画板"揭示了这是一份与Android应用开发相关的资源,特别是一个实现画板功能的源代码。在Android平台上,开发者经常需要创建具有绘画功能的应用,比如儿童学习应用、创意设计...
Protel99SE是一款经典且广泛使用的电子设计自动化(EDA)软件,主要用于电路原理图设计和PCB(印制电路板)布局布线。本文将深入解析protel99SE画板的简明流程...希望这份简明总结能为你的PCB设计之路提供有力的支持。