容器:1、JWindow 2、JFrame 3、JDialogo 4、JApplet

边界布局管理:
布局方式:把整个容器划分为五个部分:东西南北中,南北要贯通,中间最大(不仅是范围,权利也最大),
使用场景:不是用来直接放组件的,而是用来放置子容器(中间容器)的
流布局管理:
布局方式:按从左往右、从上往下,由中间开始的方式依次排放组件、组件大小要根据组件内容确定
使用场景:是用来放置组件的,而不是用来放中间容器的、流布局最好只做单行布局
网格布局管理:
布局方式:按行列将整个容器划分为等大的区域,放入的子容器的数目如果与设置的数目不等,优先保证行改变列
使用场景:不是用来直接放组件的,而是用来放置子容器的(中间容器)

事件处理:
委托事件模型:1、事件源---按钮
                    2、监听器对象
*:事件源和监听器对象具有绑定的关系,一个监听器可以绑定多个事件源,一个事件源也可以绑定多个监听器

事件处理步骤: 1、写好界面,事件源已经有了
                     2、选择合适的监听器类型
                     3、书写监听器实现类(写好处理代码)
                     4、产生监听器对象和事件源对象进行绑定
实现方式1:单独书写一个类,来实现监听器接口
特点:1、可以让一个监听器坚挺多个事件,用if判断分割,但这么做违背了单一职责。因此从设计上来说应该为每一个事件单独写一个监听器
        2、如果需要造作非事件源的其他组件,必须传参
实现方式2:让容器充当监听器
特点:1、可以让一个监听器坚挺多个事件,用if判断分割,但这么做违背了单一职责。
        2、操作本容器的组件不用传参
实现方式3:匿名内部类----再跟事件源对象绑定监听器对象的同时,实现监听对象
特点:1、每个事件源对象拥有独立的监听器类,同时没有多的JAVA文件,既满足单一,又没增加代码数量
         2、操作外部容器类的任何自检或者子容器不用传参

监听器的抽象方法-----回调方法

GUI的更多相关文章

  1. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  2. 如何通过Git GUI将自己本地的项目上传至Github

    最近在学习node.js和react,顺便复习了下AngluarJS相关的东西,写了些小demo想放在GitHub上,之前仅限于只申请了GitHub账号从没用过,今天花半天时间查资料认真学习Githu ...

  3. git图像化界面GUI的使用

    GIT学习笔记 一.        基础内容 1.git是一个版本控制软件,与svn类似,特点是分布式管理,不需要中间总的服务器,可以增加很多分支. 2.windows下的git叫msysgit,下载 ...

  4. egret GUI 和 egret Wing 是我看到h5 最渣的设计

    一个抄袭FlexLite抄的连自己思想都没有,别人精髓都不懂的垃圾框架.也不学学MornUI,好歹有点自己想法. 先来个最小可用集合吧: 1. egret create legogame --type ...

  5. [C#] 走进异步编程的世界 - 在 GUI 中执行异步操作

    走进异步编程的世界 - 在 GUI 中执行异步操作 [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5877042.html 序 这是继<开始接 ...

  6. 1.JAVA之GUI编程概述

          下列内容为本人看毕向东老师java视频教程学习笔记! JAVA GUI图形用户界面编程: Windows 操作系统提供两种操作方式:                             ...

  7. 2.JAVA之GUI编程布局

    布局管理器 容器中的组件排放方式,就是布局 常见的布局管理器: **************************************************** 1.FlowLayout(流式 ...

  8. 3.JAVA之GUI编程Frame窗口

    创建图形化界面思路: 1.创建frame窗体: 2.对窗体进行基本设置: 比如大小.位置.布局 3.定义组件: 4.将组件通过add方法添加到窗体中: 5.让窗体显示,通过setVisible(tur ...

  9. 4.JAVA之GUI编程事件监听机制

    事件监听机制的特点: 1.事件源 2.事件 3.监听器 4.事件处理 事件源:就是awt包或者swing包中的那些图形用户界面组件.(如:按钮) 事件:每一个事件源都有自己特点有的对应事件和共性事件. ...

  10. 5.JAVA之GUI编程窗体事件

    我们回顾下第三篇时的内容: 在3.JAVA之GUI编程Frame窗口中窗体是无法直接关闭的,想要关闭须进程管理器结束进程方式关掉. 现在我们就来解决下这个问题. ******************* ...

随机推荐

  1. 第一种SUSE Linux IP设置方法

    第一种SUSE Linux IP设置方法ifconfig eth0 192.168.1.22 netmask 255.255.255.0 uproute add default gw 192.168. ...

  2. oracle date change

    select to_char(sysdate,'yyyy') from dual;-----2016select to_number(to_char(sysdate,'MM'))||'月' from ...

  3. linux 安装mysql两种方式

    yum -y install gcc gcc-c++ ncurses-devel cmake  bison   zlib    zlib-devel libxml  openssl   dtrace ...

  4. ubtuntu 下安装Erlang R17

    在Ubuntu 下 Erlang R17B 的安装的过程记录: 1 :如果你主机上没有安装jdk,那需先安装,安装过程如下:   #   sudo apt-get update (更新已安装的包)   ...

  5. Git & GitHub

    使用 Git 和 GitHub 有一段时间了,总结下经验. 起初接触 Git 是先遇到 GitHub 的,当时傻傻分不清这两者的区别,毕竟名字都那么像,刚开始只想用酷酷的方法 clone 代码(SSH ...

  6. 【Python②】python之首秀

       第一个python程序 再次说明:后面所有代码均为Python 3.3.2版本(运行环境:Windows7)编写. 安装配置好python后,我们先来写第一个python程序.打开IDLE (P ...

  7. Coding源码学习第四部分(Masonry介绍与使用(一))

    Masonry GitHub:https://github.com/SnapKit/Masonry Masonry是一个轻量级的布局框架,拥有自己的描述语法,采用更优雅的链式语法封装自动布局,简洁明了 ...

  8. Spring Security (一)

    一.pom.xml <!-- spring security --> <dependency> <groupId>org.springframework.secur ...

  9. ajax属性 data--------------20160705

    $.ajax({ type : "get", //这里get和post都可以 url : "cccccc.ccc", data: "name = xx ...

  10. math and date、ajax、画布

    console.log(Math.PI);//圆周率 console.log(Math.sqrt(4));//平方根2 console.log(Math.abs(-2.3));//绝对值2.3 con ...