教材学习内容总结
Java Swing概述
通过图形用户界面(GUI),用户可以和程序之间方便地进行交互
容器类(Container)和组件类(Component)
javax.swing包中JComponent类是java.awt包中Container类的一个直接子类,是java.awt包中Component类的一个间接子类,。
基本知识点:
*Java的组件把Componenet类的子类或间接子类创建的对象称为一个组件;
*Java的把Container的子类或间接子类创建的对象称为一个容器;
*Container类提供了public方法add(),容器可以调用这个方法将组件添加到该容器;
*容器调用removeAll()方法移掉容器中的全部组件,remove(Component c)方法移掉指定的参数c组件;
*容器可以作为组件添加到另一个容器,实现容器的嵌套;
*容器添加或移掉组件时,需让容器调用验证()方法,以保证容器中的组件能正确显示出来。
窗口
Java提供的JFrame类的实例就是一个底层容器,即通常所说的窗口
JDialog类的实例也是一个底层容器,通常所称对话框
JFrame中有如下方法及常量:
*JFrame(String s)创建标题为s的窗口
*public void setBounds(int a,int b,int width,int height)设置窗口的初始位置是(a,b),单位像素(px),窗口的宽度,高度
*public void setLocation(int width,int height)设置窗口大小
*public void setSize(int x,int y)设置窗口的位置,默认位置(0,0)
*public void setVisible(boolean b)设置窗口是否可见,窗口默认不可见
*public void setResizable(boolean b)设置窗口是否可调整大小,默认可调整大小
*public void dispose()撤销当前窗口,并释放当前窗口所使用的资源
*public void setExtendState(int state)设置窗口的扩展状态,其中参数state取JFrame类中的下列类常量:MAXIMIZED_HORIZ(水平方向最大化),MAXIMIZED_VERT(垂直方向最大化),MAXIMIZED_BOTH(水平,垂直方向都最大化)
*public void setDeafaultCloseOperation(int operation)该方法用来设置单击窗口右上角的关闭图标都,程序会做出怎样的处理。参数operation可取下列静常量:
*DO_NOTTHING_ON_CLOSE(隐藏当前窗口)
*DISPOSE_ON_CLOSE(隐藏当前窗口,并释放窗体占有的其他资源)
*EXIT_ON_CLOSE(结束窗口所在的应用程序)
菜单条、菜单、菜单项
菜单条:
创建菜单条
setJMenuBar(JMenuBar bar); //将菜单条添加到窗口的顶端
菜单:
JComponent类的子类JMenu负责创建菜单,JMenu的一个实例是一个菜单
菜单项:
JComponent创建一个JMenuItem的类的实例
嵌入子菜单:
同时可以把菜单看做一个菜单项添加到某个菜单中
菜单上的图标:
用图标类Icon声明一个图标,然后使用其子类ImageIcon创建一个图标
Icon icon = new ImageIcon("a.gif");
然后菜单项调用setIcon(Icon icon)方法将图标设置为icon
常用组件与布局
常用组件都是JComponent的子类
*JTextField(文本框)
允许输入单行文本
*JTextArea(文本区)
允许输入多行文本
*JButton(按钮)
允许用户单击按钮
*JLabel(标签)
为用户提供信息
*JCheckBox的(复选框)
为用户提供多项选择
*JRadioButton(单选按钮)
为用户提供单项选择
JComboBox(下拉列表)
为用户提供单项选择
*JPasswordField(密