十一、Swing
1、Swing常用窗体
(1)JFrame框架窗体
JFrame窗体是一个容器,是Swing程序中各组件的载体。
语法:JFrame jf = new JFrame(title);
Container container = jf.getContentPane();
方法:setBackground()、setSize()、setDefultCloseOperation(模式)
几种关闭模式:DO_NOTHING_ON_CLOSE //什么都不做关闭
DISPOSE_ON_CLOSE //任何注册监听程序对象后自动隐藏并释放窗体
HIDE_ON_CLOSE //隐藏窗口的默认关闭
EXIT_ON_CLOSE //退出默认关闭
2、JDialog窗体(对话框)
调用getContentPane()将窗体转化为容器
构造方法:public JDialog()、public JDialog(Frame f)、public JDialog(Frame f.blooean model)、public JDialog(Frame f,String title)、Public JDialog(Frame f,String title,boolean model)
setResizalbe(false) //机制改变窗体大小
3、标签组件与图标
(1)标签:JLabel 显示文本和图片。
构造方法:public JLabel()、public JLabel(Icon icon)、public JLabel(Icon icon,inte aligment)、public JLabel(String text,int aligment)、public JLabel(String text,Icon icon,int aligment)
(2)图标:icon
创建图标必须实现icon接口的3个方法:
1)public int getIconHeight()
2)public int getIconWidth()
3)public void paintIcon(Component arg0,Graphics arg1,int arg2,int arg3)
ImageIconl类
构造方法:public ImageIcon()、public ImageIcon(Image image)、public ImageICon(Image image,String description)、public ImageIcon(URI url)
4、布局管理器
(1)绝对布局
取消布局管理器:Container.setLayout(null)
设置组件的大小和位置:Component。setBounds()
(2)流布局管理器(FLowLayout)
构造方法:public FlowLayout()、public FlowLayout(int alignment)、public FlowLayout(int alignment,int horizGap,int vertGap)
行位置:FlowLayout.LEFT=0/CENTER=1/RIGHT=2
(3)边界布局管理器(BorderLaoyout)
容器方位:BorderLayout.NORTH/SOUTH/WAST/WEST/CENTER
(4)网格布局管理器(GridLayout)
构造方法:public GridLayout(int rows,int columns)
public GridLayout(int rows,int columns,int horizGap,int vertGap)
5、常用面板
(1)JPanel面板:聚集一些组件来布局。
(2)JScrollPane面板:带滚动条的面板,只放置一个组件,不能使用布局管理器。
6、按钮组件
(1)提交按钮组件(JButton)
构造方法:public JButton()、public JButton(String text)、public JButton(Icon icon)、public JButton(String text,Icon icon)
(2)单选按钮组件(JRadioButton)
构造方法:public JRadioButton()
public JRadioButton(Icon icon)
public JRadioButton(Icon icon,boolean selected)
public JRadioButton(String text)
public JRadioButton(String text,Icon icon)
public JRadioButton(String text,Icon icon,boolean selected)
(3)复选框组件(JCheckBox)
构造方法:public JCheckBox()
public JCheckBox(Icon icon,boolean checked)
public JCheckBox(String text,boolean checked)
7、列表组件
(1)JComboBox类
构造方法:public JComboBox()
public JComboBox(ComboBoxModel dataModel)
public JComboBox(Object[] arrayData)
public JComboBox(Vector vector)
(2)JComboBox模型
1)一般将下拉列表框中的项目封装为ComboBoxModel接口。
实现2个方法:public void setSelectedItem(Object item)
public Object getSelectedItem()
2)继承AbstractListModel类。
2个方法:getSize()、getElementAt(int index)
8、列表框组件(JList)
构造方法:public void JList()
public ovid JList(Object[] listData)
public void JList(Vector listData)
public void JList(ListModel dataModel)
9、文本组件
(1)文本框组件(JTextField)
构造方法:public JTextField()
public JTextField(String text)
public JTextField(int fieldwidth)
public JTextField(String text,int fieldwidth)
public JTextField(Document docMoedel,String text,int fieldWidth)
(2)密码框组件(JPasswordField)
构造方法:public JPasswordField()
public JPasswordField(String text)
public JPasswordField(int fieldwidth)
public JPasswordField(String text,int fieldwidth)
public JPasswordField(Document docModel,String text,int fieldWidth)
(3)文本域组件(JTextArea)
构造方法:public JTextArea()
public JTextArea(String text)
public JTextArea(int rows,int columns)
public JTextArea(Document doc)
public JTextArea(Document doc,String Text,int rows,int columns)
十一、Swing的更多相关文章
- 十一:Java之GUI图形Awt和Swing
一. AWT和 Swing AWT 和 Swing 是 Java 设计 GUI用户界面的基础.与 AWT 的重量级组件不同,Swing 中大部分是轻量级组件.正是这个原因,Swing 差点儿无所不能, ...
- Java开发笔记(一百三十一)Swing的列表框
前面介绍了选择框的用法,当时为了方便用户勾勾点点,无论是复选框还是单选按钮,统统把所有选项都摆在界面上.倘若只有两三个选项还好办,要是选项数量变多比如超过五个,这么多的选择框一齐在界面罗列,不光程序员 ...
- JAVA之旅(三十一)——JAVA的图形化界面,GUI布局,Frame,GUI事件监听机制,Action事件,鼠标事件
JAVA之旅(三十一)--JAVA的图形化界面,GUI布局,Frame,GUI事件监听机制,Action事件,鼠标事件 有段时间没有更新JAVA了,我们今天来说一下JAVA中的图形化界面,也就是GUI ...
- 杨其菊/常惠琢《面向对象程序设计(java)》第十一周学习总结
<面向对象程序设计>第十一周学习总结 第一部分:理论知识 JAVA的集合框架 JAVA的集合框架实现对各种数据结构的封装,以降低对数据管理与处理的难度. 所谓框架就是一个类库的集合,框 ...
- 王颖奇 20171010129《面向对象程序设计(java)》第十一周学习总结
实验十一 集合 实验时间 2018-11-8 1.实验目的与要求 (1) 掌握Vetor.Stack.Hashtable三个类的用途及常用API: (2) 了解java集合框架体系组成: (3) ...
- CRL快速开发框架系列教程十一(大数据分库分表解决方案)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- 如何使用swing创建一个BeatBox
首先,我们需要回顾一些内容(2017-01-04 14:32:14): 1.Swing组件 Swing的组件(component,或者称之为元件),是较widget更为正确的术语,它们就是会放在GUI ...
- 我的MYSQL学习心得(十一) 视图
我的MYSQL学习心得(十一) 视图 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...
- WCF学习之旅—第三个示例之五(三十一)
上接WCF学习之旅—第三个示例之一(二十七) WCF学习之旅—第三个示例之二(二十八) WCF学习之旅—第三个示例之三(二十九) WCF学习 ...
随机推荐
- 07---Net基础加强
第六节复习 泛型和非泛型集合的区别 通常情况下,建议您使用泛型集合,因为这样可以获得类型安全的直接优点而不需要从基集合类型派生并实现类型特定的成员.此外,如果集合元素为值类型,泛型集合类型的性能通常优 ...
- js 实现精确加减乘除
//加法 function accAdd(arg1, arg2) { var r1, r2, m; try { r1 = arg1.toString().split(".")[1] ...
- 更改EBS APPS 密码流程
更改EBS APPS 密码流程 (更改完后重启APP 和DB)2008-1-4 在EBS11.5.10.2环境应用成功! 参考metalink Note:160337.1 How To Manual ...
- 动态时间规整(DTW) 转载
Dynamic Time Warping(DTW)诞生有一定的历史了(日本学者Itakura提出),它出现的目的也比较单纯,是一种衡量两个长度不同的时间序列的相似度的方法.应用也比较广,主要是在模板匹 ...
- 基于时间点恢复数据库stopat
create database newtestdb use newtestdbgo drop table t1go create table t1 (id int not null identity( ...
- IOC依赖注入简单实例
转自:http://hi.baidu.com/xyz136299110/item/a32be4269e9d0c55c38d59e6 相信大家看过相当多的IOC依赖注入的例子. 但大家在没有明白原理的情 ...
- 161104、NoSQL数据库:key/value型之levelDB介绍及java实现
简介:Leveldb是一个google实现的非常高效的kv数据库,能够支持billion级别的数据量了. 在这个数量级别下还有着非常高的性能,主要归功于它的良好的设计.特别是LSM算法.LevelDB ...
- UnicodeDecodeError: ‘ascii’ codec can’t decode...: ordinal not in range(128 问题解决
UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe5 in position 108: ordinal not in range(128 原 ...
- FTP上传类
using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Net;usi ...
- Mysql slow query log
一.概念部分: 顾名思义,慢查询日志中记录的是执行时间较长的query,也就是我们常说的slow query,通过设--log-slow-queries[=file_name]来打开该功能并设置记录 ...