GUI(略)
来源:互联网 发布:淘宝茵曼旗舰店 编辑:程序博客网 时间:2024/06/05 15:40
- 控制台的交互方式
- 图形化界面的交互方式
java使用到的图形类主要在java.awt 与javax.swing包中。
java.awt中使用的图形类都是依赖于系统 的图形库的。javax.swing包使用到的图形类都是sun自己实现,不需要依赖系统的图形库。
GUI API包含的类分为三个部分:组件类(component class) 容器类(container class)和辅助类(helper class)
在java中所有的图形类都被称作组件类。
======================================================================
组件的类别:
- Container容器组件 容器(Container)是一个特殊的组件,该组件可以通过add()添加其他组件
- Panel面板 面板不能单独使用,必须在顶层窗口中使用
- window
- Frame窗体
- Dialog对话框——FileDialog文件对话框
- 非容器组件
- Button
- Label
- Checkbox
- TextComponent
- TextArea
- TextField
- TextArea
parent:对话框的所有者tiltle:对话框的标题mode:load(打开) 、 save(保存)
JLabel标签
JTextField文本域
JTextArea文本区域
JComboBox组合框
JList 列表框
JmenuBar菜单条
菜单组件
菜单条(MenuBar) 、 菜单(Menu) 、 菜单项(MenuItem)
菜单条可以添加菜单
菜单可以添加菜单项
复选菜单:首先菜单添加菜单 , 菜单添加菜单项。
FlowLayout(流式布局管理器) 摆放的风格:一排一排摆放
注意事项:
- 流式布局管理器默认情况是居中对齐的。
- panel默认的局部管理器就是FlowLayout
GridLayout(表格布局管理器)
注意事项: 如果表格数量不够使用时,默认会多加一列
BorderLayout(边框布局管理器) 摆放的风格: 上北 、 下南 、 左西、 右东 , 中
注意事项:
- 使用Borderlayout添加组件的时候,如果没有指定组件的方位,那么默认添加到中间的位置上。
- 使用BorderLayout的时候,如果东南西北那个方向没有对应 的组件,那么中间位置的组件就会占据其空缺的位置。
- 窗体默认的布局管理器就是Borderlayout.
CardLayout(卡片布局管理器) 例:扑克牌
========================================================================
事件源————监听器————事件————处理方案
能够创建一个事件并触发该事件的组件称为源对象。例如由于按钮能够点击, 那么按钮就是一个源对象,按钮被点击就是一个事件。
当源对象触发了一个事件,监听器(Listener)会来处理这个事件
事件: 当发生了某个事件的时候,就会有相应处理方案
Java对组件都有对应的事件监听器,和添加事件监听器方法
鼠标事件监听器
键盘事件监听器
事件监听机制小结
一:确定事件源(容器或组件)
二:注册监听器
通过事件源对象的addXXXListener()方法将监听器对象注册到该事件源上。
三:监听器对象
注册监听器时,需要指定监听器对象。
以参数的形式进监听器对象传递给addXXXListener()
监听器对象是XXXListener的子类对象或者XXXAdapter的子类对象。
监听器对象一般用匿名内部类来表示。(简化书写)
在覆盖方法的时候,方法的参数一般是XXXEvent类型的变量接收。
事件触发后会把事件打包成对象传递给该变量。(其中包括事件源对象。通过getSource()或者getComponent()获取。)
四:常见的事件监听器
WindowListener 主要用于监听窗口
ActionListener 主要用于用监听组件对象的单击动作
MouseListener 鼠标监听器
KeyListener 监听键盘
…….
五:常见的事件适配器
WindowAdapter
MouseAdapter
KeyAdapter
- GUI(略)
- hibernate配置(略)
- c++ primer 练习 2.6、2.7(略)、 2.8(略)
- 爬楼梯(略水)
- 栈的应用(略)
- Hibernate的查询(略)
- 格雷码(c/python略)
- 4.16 jar文件(略)
- 4.17 应用举例(略)
- 5.12 应用举例(略)
- 7.5 应用举例(略)
- Windows API 的批判(略译)
- 软件工程的基本原则(略译)
- 创建数据库略懂(一)
- Flappy bird源代码(略吊)
- C++文件读写略解(fstream)
- 密码学基础知识(八)略说数字签名
- Objective-C基础测试(略简单)
- C# winform 弹出输入框输入信息
- SpringSecurity【资源和权限加入到数据库】
- 演讲大厅安排题解
- LaTeX入门教程资源,亲测有效
- TCP/IP网络参考模型
- GUI(略)
- 【学习笔记】JS Math&Json&异常处理机制
- 进程和线程的区别
- Java 成长之路
- Jsonp请求
- 如何快速、低成本构建一套稳定、高效、可靠的互联网主播直播/商业直播(推流/分发/播放)方案
- C# winform 退出程序提示
- 局域网中应用服务器通过域名访问常见问题
- Struts poi 导出