JavaSwing界面设计(所有控件及示例)汇总课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《JavaSwing界面设计(所有控件及示例)汇总课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JavaSwing 界面设计 所有 控件 示例 汇总 课件
- 资源描述:
-
1、1张蕾张蕾界面设计界面设计2n概述概述n用户界面用户界面n组件介绍组件介绍n布局管理布局管理n事件处理事件处理n菜单和表格菜单和表格3n了解了解AWTAWT和和SwingSwingn熟悉熟悉4 4个顶层容器个顶层容器n掌握掌握JFrameJFramen熟悉常用的中间容器熟悉常用的中间容器n会对组件进行布局会对组件进行布局n熟悉常用基本组件的创建和操作熟悉常用基本组件的创建和操作n会设置组件的颜色和字体会设置组件的颜色和字体n会处理组件上发生的事件会处理组件上发生的事件n会创建菜单和表格会创建菜单和表格4n 用户界面的类型用户界面的类型字符用户界面字符用户界面(CUI):例如,):例如,MS-D
2、OS图形用户界面(图形用户界面(GUI):):例如例如,Microsoft Windowsn GUIGUI的组件的组件基本的控制组件,基本的控制组件,例如:例如:Button、Label等等。容器:容器:能容纳和排列组件的组件能容纳和排列组件的组件组件组件组件继承它的父容器的性质5MenuList BoxCheck BoxRadio ButtonButtonLabel Frame WindowText BoxCombo Box6nAWTAWT(Abstract Window Toolkit)是在)是在Swing出现之前出现之前用来设计界面的工具包用来设计界面的工具包用用awt包中的类创建的用户
3、界面在不同的操作平台上有包中的类创建的用户界面在不同的操作平台上有不同的表现。不同的表现。使用不灵活使用不灵活import java.awt.*;nSwingSwing是对是对AWT的扩展,它是的扩展,它是Java 2中的一个标准包中的一个标准包n组件组件都以都以J开头开头,例如:,例如:JFrame、JButton等。等。swing界界面在不同的平台上外观完全一样,真正做到平台独立面在不同的平台上外观完全一样,真正做到平台独立nimport javax.swing.*;7java.lang.Objectjava.awt.Componentjava.awt.Containerjava.awt.
4、Paneljava.awt.Windowjava.applet.AppletJAppletjavax.swing.JComponentjava.awt.Dialogjava.awt.FrameJDialogJFrameJWindowSwing组件组件89n一个顶层容器(即主窗口)一个顶层容器(即主窗口)n顶层容器包含若干个中间容器顶层容器包含若干个中间容器n每个中间容器包含若干个基本组件每个中间容器包含若干个基本组件n按照合理的布局方式将它们组织在一起按照合理的布局方式将它们组织在一起n基本组件可响应发生在其上的事件基本组件可响应发生在其上的事件10n容器容器 容器是用来容纳和管理一组界面元素
5、的对象。基本容器是用来容纳和管理一组界面元素的对象。基本组件必须被安排在某个容器中,否则就无法使用。组件必须被安排在某个容器中,否则就无法使用。JFrameContainerJWindowJPanelJDialogJApplet有边框容器无边框容器11nJFrame , JApplet , JDialog , JWindow 作用:创建初始界面,为其他组件提供一作用:创建初始界面,为其他组件提供一个容器,以构建满足用户需求的操作界面个容器,以构建满足用户需求的操作界面nJFrame用来创建用来创建application,最常用的,最常用的nJApplet用来创建用来创建appletnJDial
6、og用来创建对话框,常用用来创建对话框,常用nJWindow不常用不常用12nJPanel , JScrollPane , JSplitPane , JTabbedPane、JInternalFrame、Box 这些容器提供将有关组件按照某种布局组合在这些容器提供将有关组件按照某种布局组合在一起,然后放入中间容器或顶层容器的功能一起,然后放入中间容器或顶层容器的功能nJPanel提供一个面板提供一个面板nJScrollPane是具有滚动条的窗格是具有滚动条的窗格nJSplitPane是具有拆分功能的窗格是具有拆分功能的窗格nJTabbedPane是带有若干标签的分类窗格是带有若干标签的分类窗格
7、nJInternalFrame用于创建内嵌于用于创建内嵌于JFrame中的内中的内部框架部框架nBox提供创建横向提供创建横向/纵向盒子容器的功能纵向盒子容器的功能13nJLabelnJButton、JCheckBox、JRadioButtonnJList、JComboBoxnJTextField、JPasswordField、JTextAreanJToolBar、JToolTip、JProgressBarnJSlider、JSpinnernJFileChooser、JColorChoosernJMenuBar、JMenu、JMenuItem、JCheckBoxMenuItem、JRadioB
8、uttonMenuItem、JPopupMenunJTablenJTreenJOptionPane、JSeparator14n类类 JFrameJFrame 是是java.awt.Framejava.awt.Frame的子类的子类n在在SwingSwing的组件中的组件中, , JFrameJFrame 并不全是由并不全是由JavaJava编写的编写的是一种与平台关系比较密切的组件是一种与平台关系比较密切的组件(Heavyweight component)java.lang.Object | +-java.awt.Component | +-java.awt.Container | +-jav
9、a.awt.Window | +-java.awt.Frame | +-javax.swing.JFrame15构造方法构造方法JFrame() 创建无标题窗口。创建无标题窗口。JFrame(String s) 创建标题名字是字符串创建标题名字是字符串s的窗口。的窗口。例如:例如:JFrame f = new JFrame(“Hello”);常用方法常用方法setTitle(StringsetTitle(String title) title) 设置设置JFrameJFrame标题文本标题文本get/ get/ setSizesetSize()():获取:获取/ /设置设置JFrameJFra
10、me的大小。的大小。add(Objectadd(Object a) a):将组件添加到:将组件添加到JFrameJFrame中。中。dispose()dispose()关闭关闭JFrameJFrame并回收用于创建窗口的任何资源。并回收用于创建窗口的任何资源。setVisible(booleansetVisible(boolean b) b)设置设置JFrameJFrame的可见性。的可见性。setLocation(x,ysetLocation(x,y) ) 设置设置JFrameJFrame在屏幕的位置在屏幕的位置16n常用方法常用方法void void setExtendedState(in
11、tsetExtendedState(int););/设置扩展的状态,取值:设置扩展的状态,取值: NORMALNORMAL ICONIFIED ICONIFIED MAXIMIZED_HORIZ MAXIMIZED_HORIZ MAXIMIZED_VERT MAXIMIZED_VERT MAXIMIZED_BOTH MAXIMIZED_BOTH /最大化最大化void void setDefaultCloseOperation(intsetDefaultCloseOperation(int););/设置默认的关闭时的操作,取值:设置默认的关闭时的操作,取值: DO_NOTHING_ON_CLO
12、SEDO_NOTHING_ON_CLOSE HIDE_ON_CLOSE HIDE_ON_CLOSE DISPOSE_ON_CLOSE DISPOSE_ON_CLOSE EXIT_ON_CLOSE EXIT_ON_CLOSE /关闭关闭17 import javax.swing.*; public class FirstJFrame public static void main(String args) JFrame f = new JFrame(); f.setTitle(My First JFrame); f.setDefaultCloseOperation(JFrame.EXIT_ON_
13、CLOSE); f.setSize(300, 300); f.setVisible(true); 18import javax.swing.*; public class SecondJFrame extends JFrame public SecondJFrame() super(“My Second JFrame”); setDefaultCloseOperation(EXIT_ON_CLOSE); setExtendedState(MAXIMIZED_BOTH); setVisible(true); public static void main(String args) SecondJ
14、Frame f = new SecondJFrame(); 19n相关类相关类n创建图标和图像对象创建图标和图像对象n设置设置setIconImage(imagesetIconImage(image););20n由由JFrame创建初始的用户界面创建初始的用户界面n由由JPanel、JScrollPane、JTabbedPane、JSplitPane、JInternalFrame、Box等创建中间容器等创建中间容器n由基本组件类创建有关的组件由基本组件类创建有关的组件n将基本组件按照某种布局添加到中间容器中,根据需将基本组件按照某种布局添加到中间容器中,根据需要可能会用到容器的嵌套要可能会用到
15、容器的嵌套n将中间容器按照某种布局添加到顶层容器中,形成满将中间容器按照某种布局添加到顶层容器中,形成满足用户需求的操作界面足用户需求的操作界面21Container con = Container con = getContentPanegetContentPane();();JPanelJPanel panel = new panel = new JPanelJPanel();();JButtonJButton butt = new butt = new JButton(JButton(PressPress Me Me););panel.add(buttpanel.add(butt););
16、con.add(panelcon.add(panel););22n学生基本信息录入界面的设计学生基本信息录入界面的设计设计一个用户界面,用于输入学生的下列信息:设计一个用户界面,用于输入学生的下列信息: 姓名姓名JTextFieldJTextField密码密码JPasswordFieldJPasswordField 性别性别JRadioButtonJRadioButton党否党否JCheckBoxJCheckBox 年龄年龄JSpinnerJSpinner颜色颜色 JColorChooserJColorChooser 加分加分JSliderJSlider系别系别JComboBoxJComboB
17、ox 选课选课JListJList确认确认JButtonJButton 保存保存JFileChooserJFileChooser结果结果JTextAreaJTextArea要求输入完毕按要求输入完毕按“确认确认”将该学生的信息记录到将该学生的信息记录到“结果结果”中;按中;按“保存保存”将结果保存到一个指定的文件中;基本信息与结将结果保存到一个指定的文件中;基本信息与结果界面上下分布在一个果界面上下分布在一个JSplitPaneJSplitPane中;屏幕下方显示当前中;屏幕下方显示当前时间时间23步骤一:步骤一:由由JFrame创建初始的用户界面,获得创建初始的用户界面,获得JFrame的容
18、器,的容器,添加中间容器添加中间容器JPanelJFrame f=new JFrame();f.setTitle(学生信息管理系统学生信息管理系统);f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.setExtendedState(MAXIMIZED_BOTH);/f.setSize(800,600);/f.setLocation(200,200);Container con=f.getContentPane();JPanel pan=new JPanel();con.add(pan);f.setVisible(true);2425标签标签
19、 标签(标签(JLabelJLabel)是最简单的组件,用于显示单行静态文本。)是最简单的组件,用于显示单行静态文本。用户只能查看其内容而不能对其进行修改。用户只能查看其内容而不能对其进行修改。 标签类没有事件响应。标签类没有事件响应。构造方法构造方法标签内容一般不需要改变,但也可以使用标签内容一般不需要改变,但也可以使用setTextsetText和和setIconsetIcon方方法进行改变法进行改变例如当使用同一标签显示不同的图片时,就可使用例如当使用同一标签显示不同的图片时,就可使用setIconsetIcon方方法实现法实现26步骤二:步骤二:添加标签(要录入的基本信息的名称)添加标
20、签(要录入的基本信息的名称)JFrame f=new JFrame();Container con=f.getContentPane();Jpanel pan=new JPanel();JLabel l_xm=new JLabel(姓名姓名);pan.add(l_xm);JLabel l_xb=new JLabel(性别性别);pan.add(l_xb);con.add(pan);f.setVisible(true);27n按钮是常用的功能组件,表示按钮的类为按钮是常用的功能组件,表示按钮的类为JButton。构造方法构造方法JButtonJButton button1 = new butto
21、n1 = new JButtonJButton( (“姓名姓名”););ImageIconImageIcon ii = new ii = new ImageIcon(ImageIcon(“java.gif”););JButtonJButton button2 = new button2 = new JButton(iiJButton(ii););JButtonJButton button3 = new button3 = new JButtonJButton( (“姓名姓名”,ii);ii);常用方法常用方法void void setActionCommand(StringsetActionC
22、ommand(String););void void addActionListener(ActionListeneraddActionListener(ActionListener););按钮按钮28步骤二:步骤二:添加按钮(确认和保存按钮)添加按钮(确认和保存按钮)JFrame f=new JFrame(); Container con=f.getContentPane();JPanel pan=new JPanel();JLabel l_xml_xm=new JLabel(姓名姓名);pan.add(l_xm); JButton b_sub=new JButton(确认确认);pan.a
23、dd(b_sub);JButton b_save=new JButton(保存保存);pan.add(b_save); con.add(pan);f.setVisible(true);29n构造方法构造方法JTextField tf1 = new JTextField(10);JTextField tf2 = new TextField(“aa”);JTextField tf3 = new JTextField(“aa”,8);ComponentTextComponentJTextFieldJTextArea单行的文本框单行的文本框多行的文本区多行的文本区文本框(文本框(JTextField)
24、n其它方法其它方法 public String getText() public String getSelectedText() public void setText(String s) public void setEchoChar(char c) public void setEditable(boolean b)30步骤二:步骤二:添加文本框(录入姓名信息)添加文本框(录入姓名信息)JFrame f=new JFrame(); Container con=f.getContentPane();JPanel pan=new JPanel();JLabel l_xm=new JLabel
25、(姓名姓名);pan.add(l_xm);JTextField tf_name=new JTextField(20);pan.add(tf_name);con.add(pan);f.setVisible(true);31n构造方法构造方法 JTextAreaJTextArea ta1 = new ta1 = new JTextAreaJTextArea(5,5);(5,5);JTextAreaJTextArea ta2 = new ta2 = new JTextAreaJTextArea( (“abab”,8,7);,8,7);ComponentTextComponentJTextFieldJ
展开阅读全文