`

登陆界面、事件与创意画板总结

阅读更多

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

 

 

分享到:
评论

相关推荐

    labview画板程序-用户界面事件

    运用用户界面事件结构,模拟一个简单的画图板功能。它有4个功能选项:点(point)、线(line)、圆(circle)和椭圆(oval),一次完成的绘画过程是:在画布上单击鼠标开始绘制→按住鼠标的同时在画布上拖动鼠标→在...

    web点击按钮事件弹出画板功能的画板插件

    本文将详细介绍如何使用一个基于Java技术的Web画板插件,以及如何将其与视频教学项目相结合。 首先,让我们了解一下“web点击按钮事件弹出画板功能”。在网页中,我们可以使用JavaScript或jQuery等库来监听按钮的...

    易语言画板应用事件

    其中,“画板应用事件”是易语言编程中一个重要的概念,它涉及到图形界面(GUI)设计与用户交互的实现。本文将深入探讨这一主题,包括画板的基本操作、事件处理机制以及如何利用这些功能进行统计和显示大数量级数据...

    java创意画板全功能.zip

    Java创意画板可能使用了JFrame作为主窗口,JPanel作为画布,并可能使用了事件监听器来响应用户的输入,如鼠标点击和拖动。 5. 多线程:为了实现流畅的用户体验,Java创意画板可能会使用多线程。例如,复杂的图像...

    画板_画板_labview程序_源码

    通过这个“画板”程序,初学者可以学习到LabVIEW的基本编程概念,包括图形化编程、用户界面设计、事件处理、以及如何使用LabVIEW的内置图形API。对于有经验的LabVIEW开发者来说,这可能是一个展示自定义绘图功能和...

    画板总结

    【文件名称】:“画板项目总结.ppt”是一个PowerPoint演示文稿,通常包含幻灯片形式的总结内容,可能包括项目概述、技术选型、架构设计、功能模块介绍、界面展示、性能优化等方面的详细信息。读者可以通过这个PPT...

    易语言画板应用事件.7z

    总结,易语言画板应用事件是构建图形界面程序的重要组成部分,通过合理利用这些事件,开发者可以创建出富有交互性和创新性的应用程序。无论是初学者还是经验丰富的开发者,都应该熟练掌握这一核心技术,以提升自己的...

    易语言画板控件的功能应用与事件

    在提供的源码文件“易语言画板控件的功能应用与事件源码”中,开发者可以找到具体的代码实现。通过学习和理解这段源码,可以更好地掌握易语言画板控件的使用方法,从而在自己的项目中灵活运用。 总结来说,易语言...

    易语言画板自绘界面

    总结来说,"易语言画板自绘界面"是一个涵盖了图形用户界面设计、事件处理、图形绘制等多个方面的项目。开发者需要掌握易语言的基本语法、控件操作、图形绘制函数,以及事件驱动编程的概念,才能创建出功能完整、交互...

    易语言源码易语言画板控件的功能应用与事件源码.rar

    易语言源码易语言画板控件的功能应用与事件源码.rar 易语言源码易语言画板控件的功能应用与事件源码.rar 易语言源码易语言画板控件的功能应用与事件源码.rar 易语言源码易语言画板控件的功能应用与事件源码.rar ...

    画板保存总结

    4. **源码分析**:博客中的链接可能提供了具体的代码实现,通过阅读源码,读者可以学习到如何将图形界面与事件处理结合,以及如何有效地保存和加载图形数据。这包括类的设计、对象的实例化、方法的调用等方面的知识...

    简单画板开发总结

    在IT行业中,开发一个简单的画板应用是一项常见的任务,它涉及到图形用户界面(GUI)设计、事件处理以及绘图技术。下面将详细讲解这个过程,包括核心知识点和可能遇到的技术难点。 首先,画板的基本功能通常包括...

    易语言画板字符输入

    2. **事件处理**:学习如何编写事件处理程序,例如鼠标点击事件、键盘按键事件,以及如何将这些事件与画板上的字符输入关联起来。 3. **画板绘图**:掌握在画板上绘制字符的基本方法,包括选择字体、颜色、大小,...

    易语言画板透明去色

    在易语言中,我们可以创建一个窗口程序,并在其上添加画板控件,用户可以通过鼠标或键盘与之交互。 透明度调整涉及到的是图像的Alpha通道。Alpha通道是RGB颜色模型的一个扩展,用于表示像素的透明程度。0代表完全...

    opencv画板功能实现源程序

    总结来说,"opencv画板功能实现源程序"项目通过OpenCV提供的图形绘制函数和鼠标事件处理,实现了让用户在交互式窗口上自由绘画的功能。项目中可能涉及多个Python模块,每个模块负责不同的功能,如主程序控制、画板...

    Android触摸事件小小画板

    在Android开发中,触摸事件(Touch Events)是用户与设备交互的重要方式,特别是在移动设备上。本节将探讨如何在Android应用中处理触摸事件,并通过一个简单的“小小画板”实例来阐述其基本原理。 首先,Android的...

    网络画板和聊天

    【网络画板和聊天】是基于Java技术开发的一款集在线画图与实时聊天功能于一体的软件。这个项目展示了Java在网络通信和图形用户界面设计上的强大能力,同时也为用户提供了一个创新的协作平台。 首先,我们要理解...

    java图形界面画板

    一个简单的画板,黑大软体实验二,对学java会有帮助

    完整的安卓画板源代码 Android小画板

    【标题】"完整的安卓画板源代码 Android小画板"揭示了这是一份与Android应用开发相关的资源,特别是一个实现画板功能的源代码。在Android平台上,开发者经常需要创建具有绘画功能的应用,比如儿童学习应用、创意设计...

    protel99SE画板简明流程总结

    Protel99SE是一款经典且广泛使用的电子设计自动化(EDA)软件,主要用于电路原理图设计和PCB(印制电路板)布局布线。本文将深入解析protel99SE画板的简明流程...希望这份简明总结能为你的PCB设计之路提供有力的支持。

Global site tag (gtag.js) - Google Analytics