Swing学习1——总体概述
以下来自于JDK1.6
一、Swing学习我划分为两个方面:
一方面Swing的界面设计部分,包括相关组件类的继承关系,组件的功能用途,布局管理;
1.首先继承关系上自上而下为
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent(窗体中的各种组件工具类继承自此类,与AWT组件结构大部分相同)
java.awt.Window
javax.swing.JWindow(窗口)
java.awt.Frame
javax.swing.JFrame(框架)
java.awt.Dialog
javax.swing.JDialog(对话框)
Window下包含了三种顶层容器:顶层容器一共四种:JFrame(框架),JDialog(对话框),JWindow(窗口),和JApplet(JApplet与Java中Applet程序有关几乎已弃用)。
顶层容器分为四层自上而下为glass pane(玻璃面板),content pane(内容面板)和meun bar(菜单栏),
layered pane(分层面板),root pane(根面板),其中简单界面设计主要设计内容面板和菜单栏这一层次。
JComponent下包含了各种容器的组件以及
八种中间容器:JPanel(面板),JScrollPanel(滚动面板),JOptionPane,JSplitPane,JTabbedPane,JInternalFrame,JToolBar(直接继承自Component)
JDesktopPane(直接继承自JLayeredPane,间接继承Component)
中间容器注解:中间容器的作用容纳组件
两种特殊容器:JLayeredPane(分层面板,容纳内部框架),JRootPane(根框架),(有且仅有的两个特殊容器继承自Component)
2.组件的功能用途
JButton等此处暂不写了,有兴趣的可以查看API
3.常用布局管理器
绝对布局:首先用Container.setLayout(null)取消默认布局管理器
然后用Component的setBounds(int x,int y,int width,int height)方法设置每个组件大小及位置即可。
流布局管理器(FlowLayout)
边界布局管理器(BorderLayout):在不指定窗体布局的情况下,默认Swing组件的布局模式为边界布局管理器
网格布局管理器(GridLayout)
第二部分关于事件处理的,后续补充
Swing学习1——总体概述的更多相关文章
- mybatis 学习一 总体概述
mybatis使用起来不复杂,大体上来说,就是将db连接信息,所有的sql语句信息,都放到配置文件里面,然后去读配置信息,根据db信息,创建好session工厂,然后拿到sqlsession回话之后, ...
- 【基于WinForm+Access局域网共享数据库的项目总结】之篇一:WinForm开发总体概述与技术实现
篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...
- MVC5网站开发之一 总体概述
由于前几次都没能写完,这次年底总算有自由时间了,又想继续捣鼓一下.于是下载了VS 2015专业版(不知为什么我特别钟爱专业版,而不喜欢企业版).由于以前的教训,我这次决定写一个极简的Deom,简到什么 ...
- Java虚拟机JVM学习01 流程概述
Java虚拟机JVM学习01 流程概述 Java虚拟机与程序的生命周期 一个运行时的Java虚拟机(JVM)负责运行一个Java程序. 当启动一个Java程序时,一个虚拟机实例诞生:当程序关闭退出,这 ...
- TestNG学习-002-annotaton 注解概述及其执行顺序
此文主要讲述用 TestNG 基础的 annotation (注解)知识,及其执行的顺序,并通过一个 TestNG 简单的实例演示 annotation 的执行顺序. 希望能对初学 TestNG 测试 ...
- VC++学习之GDI概述
VC++学习之GDI概述 图形设备接口(GDI)是一个可执行程序,它接受Windows应用程序的绘图请求(表现为GDI函数调用),并将它们传给相应的设备驱动程序,完成特定于硬件的输出,象打印机输出和屏 ...
- WCF从零学习之WCF概述(一)
WCF从零学习之WCF概述(一) 一.WCF概述 我先了解了分布式应用程序开发,所谓分布式应用程序是指应用程序分布在不同计算机上,通过网络来共同完成一项任务.通常为服务器/客户端模式. 在WCF发布之 ...
- ASP.NET MVC4学习笔记之总体概述
断断续续使用ASP.NET MVC框架也有一年多了,也算积累了一些经验,唉,一直想写一些笔记好好总结一下,人太懒不想动笔,今天终于决定开始.希望自己能坚持下去. 这篇文章大体介绍ASP.NET MVC ...
- μCos-ii学习笔记1_概述
一.μCos-ii _概述 网上关于μCosii的文章多不胜数,本人学习的过程中也参考了很多人的理解和想法,看的是卢有亮老师的<嵌入式实时操作系统-μC/OS原理与实践>(第2版),同时也 ...
随机推荐
- 关于requestAnimationFrame与setInterval的一点差异
requestAnimationFrame与setInterval都可以实现循环触发事件,但是setInterval是基于时间的,而requestAnimationFrame是基于帧数的,在我的一次开 ...
- 延迟提交form
提交按钮延迟提交form表单 function a(){document.getElementById('form1').submit();}setTimeout(a,5000);
- 错误处理:error(0) error portability:3 this xilinx application has run out of memory has encountered a memory conflict
在FPGA侧提供了一个gp0,gp1各占1m内存的版本后.生成mcs版本,在下载版本时报错: error(0) error portability:3 this xilinx application ...
- ES5原型琏继承
function add(){}; add.prototype.showName = "MAN";add.prototype.name = function(){ console. ...
- Linux之文件、目录
Linux之文件.目录 文件权限 User.Group.Others 在Linux中,任何一个文件都具有这三种身份的个别权限,三者的区别是 User: 指每一个单独的用户,例如member1,memb ...
- python 面向对象 继承 派生 组合
具体参考博客:http://www.cnblogs.com/linhaifeng/articles/6182264.html#_label12 一.面向对象 面向对象:对象与对象之间的相互交互,不可预 ...
- CentOS 7安装部署ELK 6.2.4-SUCCESS
一.ELK介绍 ELK是三款开源软件的缩写,即:ElasticSearch + Logstash + Kibana.这三个工具组合形成了一套实用.易用的监控架构,可抓取系统日志.apache日志.ng ...
- Arch Linux VMware虚拟机(新手)安装教程
准备工作: 下载好Arch Linux的镜像文件 百度打开Arch官网点击download(下载)转到下载界面,点击磁力下载或者种子下载(官网默认是英文,英文不好的童鞋可以安装浏览器翻译插件,本 ...
- IE浏览器下flex布局的bug
原文地址:gitub上的Flexbugs list,可以看到Flex布局在IE糟糕表现的详细描述. 2. Column flex items set to align-items:center ove ...
- Ubuntu 17.04版本下,opencv进行源码编译安装
本文主要针对Ubuntu 17.04版本下,opencv进行源码编译安装.开发环境主要针对python 对 openCV库的调用. 安装 gcc cmake 编译环境 sudo apt-get ins ...