十一、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学习 ...
随机推荐
- angular ng-href
farmApp.config([ '$compileProvider', function( $compileProvider ) { $compileProvider.aHrefSanitizati ...
- html5,表格
<table border="1"><caption>表格的实例</caption><tr><td>单元格</td ...
- RMB转换人民币大小金额
MXS&Vincene ─╄OvЁ &0000015 ─╄OvЁ MXS&Vincene MXS&Vincene ─╄OvЁ:今天很残酷,明天更残酷,后天很美好 ...
- echo date
echo -n 不换行 echo -n '123';echo '456' #结果:123456 echo -e 启用下列反斜杠转义的解释 \b 退格 \t制表 \n 换行 \r 回车 echo -e ...
- python随机数的使用记录
一.random模块简介 Python标准库中的random函数,可以生成随机浮点数.整数.字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等. 二.random模块重要函数 1 ).ra ...
- TI CC2541的整体目标
1. App端会发送一定数量的byte过来蓝牙, 每2个byte是一个汉字的编码. 2. 拿到汉字编码之后, 统计字符数量, 然后通过SPI, 搜索编码 3. 收到的编码, 每个汉字字符有32个byt ...
- TreeNode动态邦定事件
1. 显示不能用TextField,应该用StaticText 2. public void SetNodesAction(Tree t, String methodbind){ ArrayList ...
- fedora 20 yum出错
需要利用linux做项目,所以在win10装了vmvare 以及 fedora,据说这个linux比较稳定.. 1.系统装好以后,需要先把terminal调处理,这才符合程序猿的习惯嘛,具体方法如下 ...
- DomainHelper
public class DomainHelper { public static void SetDomainValue(string key, object password) { AppDoma ...
- 在discuz二次开发模板时,diy编辑显示我“抱歉,您没有权限添加此模块
<div id="diy_vk_portal_slide_top" class="area"><div id="frameCRxR0 ...