Java应用程序设计(Swing GUI).ppt





《Java应用程序设计(Swing GUI).ppt》由会员分享,可在线阅读,更多相关《Java应用程序设计(Swing GUI).ppt(49页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Java应用程序设计应用程序设计第第8章章 Swing组件组件参考教材:参考教材:Java实用教程,实用教程,肖磊,人民邮电出版社肖磊,人民邮电出版社8.1 Swing概述概述n nSwing是基于是基于AWT开发的,开发的,AWT的组件全的组件全部是重量级的,而相应的组件在部是重量级的,而相应的组件在Swing中全中全部都改成轻量级的;部都改成轻量级的;n nSwing组件的跨平台性比较好,而且增加了组件的跨平台性比较好,而且增加了一些组件;一些组件;n nSwing是是JFC(Java Foundation Class)的一部分,其余的一部分,其余5个部分是:个部分是:AWT,辅助功,辅助
2、功能能API,2D API和对拖放功能增强的支持;和对拖放功能增强的支持;n nSwing中的每一个轻量级组件必须出现在重中的每一个轻量级组件必须出现在重量级容器中,所以量级容器中,所以Swing的小应用程序的小应用程序JApplet、窗体、窗口、对话框都必须是重、窗体、窗口、对话框都必须是重量组件,以提供绘制量组件,以提供绘制Swing轻量级组件的窗轻量级组件的窗口;口;n nSwing组件由组件由40多个,一部分为多个,一部分为AWT组件组件的替代品,另一部分是提供给用户开发图的替代品,另一部分是提供给用户开发图形用户界面增添的组件;形用户界面增添的组件;8.1 Swing概述概述8.2
3、创建窗体创建窗体n n利用利用JFrame类来创建窗体;类来创建窗体;n nsetTitle(String title);/设置窗体标题;设置窗体标题;n nsetBounds(int x,int y,int width,int height);/设置窗体的位置和大小设置窗体的位置和大小n nsetDefaultCloseOperation(int operation);/设置关闭按钮的动作设置关闭按钮的动作n noperation为为JFrame类中用来设置关闭按类中用来设置关闭按钮动作的静态常量,见下页表;钮动作的静态常量,见下页表;8.2 创建窗体创建窗体静态常量静态常量静态常量静态常量
4、常量值常量值常量值常量值执行操作执行操作执行操作执行操作HIDE_ON_CLOSEHIDE_ON_CLOSE1 1隐藏窗口,默认隐藏窗口,默认隐藏窗口,默认隐藏窗口,默认DO_NOTHING_ON_CLOSEDO_NOTHING_ON_CLOSE0 0不执行任何操作不执行任何操作不执行任何操作不执行任何操作DISPOSE_ON_CLOSEDISPOSE_ON_CLOSE2 2移除窗口移除窗口移除窗口移除窗口EXIT_ON_CLOSEEXIT_ON_CLOSE3 3退出窗口退出窗口退出窗口退出窗口8.2 创建窗体创建窗体n n在利用在利用JFrame类创建窗体时,必须在最后类创建窗体时,必须在最
5、后通过该类的通过该类的setVisible(true);将该窗体设;将该窗体设置为可见,默认为不可见;置为可见,默认为不可见;n n在在setVisible(true)之后的对窗体设置将无之后的对窗体设置将无效;效;n n例子:例子:MyFirstFrame.java8.3 常用组件常用组件n n8.3.1 JLable标签组件标签组件n n通过通过JLable类创建标签组件;类创建标签组件;n nsetText(String text);/设置标签设置的文设置标签设置的文本本n nsetFont(Font font);/设置文本字体及大小;设置文本字体及大小;n nsetHorizontal
6、Alignment(int alignment);/设置文本的显示位置,该参数可从下表中设置文本的显示位置,该参数可从下表中选择选择8.3.1 JLabel标签的创建标签的创建n nJLabelJLabel类用于设置标签内容水平位置的常量类用于设置标签内容水平位置的常量类用于设置标签内容水平位置的常量类用于设置标签内容水平位置的常量静态常静态常静态常静态常量量量量常量值常量值常量值常量值水平位水平位水平位水平位置置置置LEFTLEFT2 2靠左靠左靠左靠左CENTECENTER R0 0具中具中具中具中RIGHTRIGHT4 4靠右靠右靠右靠右n nsetIcon(Icon icon);/se
7、tIcon(Icon icon);/设置标签中可显示的图片设置标签中可显示的图片设置标签中可显示的图片设置标签中可显示的图片n nsetHorizontalTextPosition(int textPosition);/setHorizontalTextPosition(int textPosition);/设设设设置文字相对于图像在水平方向上的位置,可从下表置文字相对于图像在水平方向上的位置,可从下表置文字相对于图像在水平方向上的位置,可从下表置文字相对于图像在水平方向上的位置,可从下表中选择中选择中选择中选择静态常量静态常量静态常量静态常量常量值常量值常量值常量值水平方向位置水平方向位置水
8、平方向位置水平方向位置TOPTOP1 1文字在图片上方文字在图片上方文字在图片上方文字在图片上方CENTERCENTER0 0文字与图片在垂文字与图片在垂文字与图片在垂文字与图片在垂直文向上重叠显直文向上重叠显直文向上重叠显直文向上重叠显示示示示BOTTOMBOTTOM3 3文字显示在图片文字显示在图片文字显示在图片文字显示在图片下方下方下方下方例子:例子:例子:例子:LabelDemo.java LabelDemo.java8.3.2 JButton组件组件n n通过通过JButton类来创建按钮组件;类来创建按钮组件;n nsetText(String text);/设置按钮的标签文设置按
9、钮的标签文本本n nsetIcon(Icon defaultIcon);/设置按钮在默设置按钮在默认状态下显示的图片;认状态下显示的图片;n nsetRolloverIcon(Icon rolloverIcon);/设设置当光标移到按钮上时显示的图片;置当光标移到按钮上时显示的图片;n nsetPressedIcon(Icon pressedIcon);/设设置按钮被按下时显示的图片;置按钮被按下时显示的图片;8.3.2 JButton组件组件n nsetMargin(setMargin(InsetsInsets m);/m);/将按钮边框和标签四周的将按钮边框和标签四周的将按钮边框和标签四周
10、的将按钮边框和标签四周的间隔均设置为间隔均设置为间隔均设置为间隔均设置为0 0;n nInsetsInsets类的构造方法类的构造方法类的构造方法类的构造方法:n nInsetsInsets(int top,int left,int bottom,int right);(int top,int left,int bottom,int right);n n/4/4个整形参数依次为:标签上方,左侧,下方和个整形参数依次为:标签上方,左侧,下方和个整形参数依次为:标签上方,左侧,下方和个整形参数依次为:标签上方,左侧,下方和右侧的间隔;右侧的间隔;右侧的间隔;右侧的间隔;n nsetContentA
11、reaFilled(boolean b);/setContentAreaFilled(boolean b);/设置为不绘设置为不绘设置为不绘设置为不绘制按钮的内容区域,即设置按钮的背景为透明,制按钮的内容区域,即设置按钮的背景为透明,制按钮的内容区域,即设置按钮的背景为透明,制按钮的内容区域,即设置按钮的背景为透明,当参数为当参数为当参数为当参数为falsefalse时为不绘制,默认为时为不绘制,默认为时为不绘制,默认为时为不绘制,默认为true;true;n nsetBorderPainted(boolean b);/setBorderPainted(boolean b);/设置不绘制按设置
12、不绘制按设置不绘制按设置不绘制按钮的边框,默认为钮的边框,默认为钮的边框,默认为钮的边框,默认为true,true,表示绘制;表示绘制;表示绘制;表示绘制;8.3.3 JRadioButton组件组件n nJRadioButton组件实现一个单选按钮,可组件实现一个单选按钮,可以单独使用,也可以和以单独使用,也可以和ButtonGroup类联类联合使用;合使用;n n单独使用:该按钮可以被选定和取消;单独使用:该按钮可以被选定和取消;n n与与ButtonGroup联合使用:用户只能选定联合使用:用户只能选定按钮组中的一个按钮,其取消选定的操作按钮组中的一个按钮,其取消选定的操作由由Butto
13、nGroup类自动完成;类自动完成;8.3.3 JRadioButton(ButtonGroup)n nButtonGroup类用来创建一个按钮组,其类用来创建一个按钮组,其作用负责维护本组按钮的作用负责维护本组按钮的“开启开启”状态,状态,每个组中只能有一个按钮处于每个组中只能有一个按钮处于“开启开启”状状态;态;n n经常与经常与JRadioButton,JRadioButtonMenuItem,JToggleButton类型的按钮一起使用;类型的按钮一起使用;n nButtonGroup类提供的常用方法(下页表)类提供的常用方法(下页表)方法方法方法方法功能功能功能功能add(Abstr
14、actButton b)add(AbstractButton b)添加按钮到按钮组中添加按钮到按钮组中添加按钮到按钮组中添加按钮到按钮组中remove(AbstractButton b)remove(AbstractButton b)移除按钮组中的按钮移除按钮组中的按钮移除按钮组中的按钮移除按钮组中的按钮getButtonCount()getButtonCount()返回按钮组中的按钮个数返回按钮组中的按钮个数返回按钮组中的按钮个数返回按钮组中的按钮个数getElements()getElements()返回一个返回一个返回一个返回一个EnumerationEnumeration对象,对象,对
15、象,对象,可以遍历按钮组中包含的所有可以遍历按钮组中包含的所有可以遍历按钮组中包含的所有可以遍历按钮组中包含的所有按钮按钮按钮按钮ButtonGroupButtonGroup类提供的常用方法类提供的常用方法类提供的常用方法类提供的常用方法8.3.3 JRadioButton(常用方法)(常用方法)n nsetText(String text);/设置单选按钮文本;设置单选按钮文本;n nsetSelected(boolean b);/设置按钮的状设置按钮的状态,态,true为选中,默认为为选中,默认为false;n n例子:例子:RadioButtonDemo.java8.3.4 JCheck
16、Box组件组件n nJCheckBox为一复选框,用户可以同时选为一复选框,用户可以同时选定多个;定多个;n nsetText(String text);/设置复选框的文本设置复选框的文本n nsetSelected(boolean b);/设置该按钮的设置该按钮的选中状态,选中状态,true表示选中,默认为表示选中,默认为false;n n例子:例子:CheckBoxDemo.java8.3.5 JComboBox组件组件(选择框选择框)n nJComboBox组件实现一个选择框,用户可组件实现一个选择框,用户可从中选取一项(只能一项);若设置为可编从中选取一项(只能一项);若设置为可编辑状
17、态,则可以在选择框中输入相应的值;辑状态,则可以在选择框中输入相应的值;n n创建创建JComboBox组件的方法组件的方法n n(1)JComboBox(Object items)构造函数构造函数String idCards=“String idCards=“身份证身份证身份证身份证”,”,”士兵证士兵证士兵证士兵证”,”,”驾驾驾驾驶证驶证驶证驶证”;”;JComboxBox idCardsComboBox=JComboxBox idCardsComboBox=new JComboxBox(idCards);new JComboxBox(idCards);8.3.5 JComboBox组件
18、组件n n(2)setModel(ComboBoxModel aModel)方法方法String idCards=“String idCards=“身份证身份证身份证身份证”,”,”士兵证士兵证士兵证士兵证”,”,”驾驾驾驾驶证驶证驶证驶证”;”;JComboBox icb=new JComboBox();JComboBox icb=new JComboBox();icb.setModel(new icb.setModel(new DefaultComboBoxModel(idCards);DefaultComboBoxModel(idCards);n(3)addItem(Object ite
19、m);和insertItemAt(Object item,int index);JComboBox icb=new JComboBox();icb.addItem(“士兵证”);icb.addItem(“驾驶证”);icb.insertItemAt(“身份证”,0);8.3.5 JComboBox组件组件8.3.5 JComboBox组件组件方法方法方法方法功能功能功能功能addItem(Object item);addItem(Object item);添加选项至列表尾部添加选项至列表尾部添加选项至列表尾部添加选项至列表尾部insertItemAt(Object item,int inser
20、tItemAt(Object item,int index);index);在指定位置插入选项在指定位置插入选项在指定位置插入选项在指定位置插入选项removeItem(Object item);removeItem(Object item);移除指定选项移除指定选项移除指定选项移除指定选项removeItemAt(int index);removeItemAt(int index);移除指定索引位置上的选项移除指定索引位置上的选项移除指定索引位置上的选项移除指定索引位置上的选项removeAllItems()removeAllItems()移除所有选项移除所有选项移除所有选项移除所有选项se
21、tSelectedItem(Object item);setSelectedItem(Object item);指定某选项为默认选项指定某选项为默认选项指定某选项为默认选项指定某选项为默认选项setSelectedIndex(int index);setSelectedIndex(int index);指定特定索引位置的选项为默认指定特定索引位置的选项为默认指定特定索引位置的选项为默认指定特定索引位置的选项为默认setMaximumRowCount(int setMaximumRowCount(int count)count)选择框弹出时最多显示的行数,默选择框弹出时最多显示的行数,默选择框弹
22、出时最多显示的行数,默选择框弹出时最多显示的行数,默认为认为认为认为8 8行行行行setEditable(boolean isEdit);setEditable(boolean isEdit);选择框可否编辑,默认选择框可否编辑,默认选择框可否编辑,默认选择框可否编辑,默认falsefalseJComboBoxJComboBox类提供的常用方法类提供的常用方法类提供的常用方法类提供的常用方法u例子:例子:例子:例子:ComboBoxDemo.javaComboBoxDemo.java8.3.6 JList组件组件n n与与与与JComboBoxJComboBox类似,不同之处是可以多选;类似,
23、不同之处是可以多选;类似,不同之处是可以多选;类似,不同之处是可以多选;n n初始化列表项初始化列表项初始化列表项初始化列表项Integer months=1,2,3,4,5,6,7,8,9,10,11,12;Integer months=1,2,3,4,5,6,7,8,9,10,11,12;JList list=new JList(months);JList list=new JList(months);n nJListJList列表框的列表框的列表框的列表框的3 3种选取模式,通过种选取模式,通过种选取模式,通过种选取模式,通过ListSelectionModelListSelection
24、Model类类类类中的静态常量进行指定;中的静态常量进行指定;中的静态常量进行指定;中的静态常量进行指定;常量常量常量常量常量值常量值常量值常量值作用作用作用作用SINGLE_SELECTIONSINGLE_SELECTION0 0只允许单选只允许单选只允许单选只允许单选SINGLE_INTERVAL_SELECTIONSINGLE_INTERVAL_SELECTION1 1只允许连续多选只允许连续多选只允许连续多选只允许连续多选MULTIPLE_INTERVAL_SELECTIONMULTIPLE_INTERVAL_SELECTION2 2可多选,可连续可多选,可连续可多选,可连续可多选,可
25、连续/间隔间隔间隔间隔8.3.6 JList组件组件n nJListJList提供的常用方法提供的常用方法提供的常用方法提供的常用方法setSelectedIndex(int index):setSelectedIndex(int index):选中指定索引的一个选选中指定索引的一个选选中指定索引的一个选选中指定索引的一个选项;项;项;项;setSelectedIndices(int indices);setSelectedIndices(int indices);选中指定索引的一选中指定索引的一选中指定索引的一选中指定索引的一组选项;组选项;组选项;组选项;setSelectionBackg
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java应用程序设计Swing GUI Java 应用 程序设计 Swing GUI

限制150内