1.JCheckBox(复选框)
(1)常用方法:
*JCheckBox(String label)
*JCheckBox(String label,Icon icon)
//构造一个复选框,初始没有被选择
*JcheckBox(String label,boolean state)
//用初始话标签和初始化状态构造一个复选框
*boolean isSelected()
*void setSelected(boolean state)
//获取或设置复选框的选择状态
2.JRadioButton(单选按钮)
(1)为单选按钮组构造一个ButtonGroup 的对象,然后,再将每个JRadioButton类型的对象添加到按钮组中。注:按钮组仅仅控制按钮的行为,若果想把这些按钮组织在一起布局,需要把他们添加到容器中,如JPanel
(2)常用方法:
*JRadioButton(String label,Icon icon)//构造一个单选按钮,初始没有被选择
*JRadioButton(String label,boolean state)//用给定的标签和初始状态狗仔一个单选按钮
*void add(AbstractButton b)//将按钮添加到组中(ButtonGroup的方法)
3.Border(边框)(可以再任何继承了JComponent的组件上应用边框)
(1)创建边框的方法
*调用BorderFactory的静态方法(如:createEtchedBorder)创建边框
*如果愿意的话,可以给边框添加标题,具体的实现方法是将边框传递给:BorderFactory.createTitleBorder
*如果确实想把一切凸显出来,可以调用下列方法将集中边框组合起来使用:BorderFactory.createCompoundBorder
*调用JComponent类中setBorder方法将结果边框添加到组件中
举例说明
Border etched = BorderFactory.createEtchedBorder();
Border title = BorderFactory.createTitleBorder(etched,"A Title");
panel.setBorder(title);
4.JComboBox(组合框,下拉列表)
(1)常用方法:
*boolean isEditable()
*boolean setEditable(boolean b)
//获取或设置组合框的可编辑特性
*void addItem(Obect item)//把选项添加到选项列表中
*void insertItemAt(Object item,int idext)//把选项添加到指定选项列表的指定位置
*void removeItem(Object item)//从选项列表中删除一个选项
*void removeItemAt(int index)//删除指定位置的选项
*void removeAllItems()//从选项表中删除所有选项
*void getSelectedItem()//返回当前选择的选项
(2)当用户从组合框中选择一个选项时,组合框就将产生一个动作事件,为了判断哪个选项被选择,可以通过事件参数调用getSource方法来得到发送事件的组合框引用,接着调用getSelectedItem方法获取当前选择的选项。需要把这个方法的返回值转化为相应的类型,通常是String类型。
5.JSlider(滑块)
(1)常用方法:
*JSlider()
*JSlider(int direction)
*JSlider(int min,int max)
*JSlider(int min ,int max,int initialValue)
*JSlider(int direction,int min,int max,int initialValue )
//用给定的方向,最大值,最小值和初始化值构造一个水平滑块
*void setPaintTicks(boolean b)//如果b是true,显示标尺
*void setMajorTickSpacing(int units)
*void setMinorTickSpacing(int units)
//用给定的滑块单元的倍数设置大标尺和小标尺
*void setPaintLabels(boolean b)//如果b是true,显示标尺标签
*void setLabelTable(Dictionary tables)//设置用于作为标尺标签的组件,表中的每一个键/值对都采用 new Integer(value)/component的格式
*void setSnapToTicks(boolean b)//如果b是true,每一次调整后滑块都要对齐到最近的标尺处
*void setPaintTrack(boolean b)//如果b是true,显示滑块滑动的轨迹
(2)提供其他形式的标尺标记,如字符串或者图标。首先需要填充一个键位Integer类型且值为Component类型的散列表,然后再调用setLabelTable方法,组件就会设置在标尺标记处,通常组件使用的是JLabel对象。
举例如下:Hashtable<Integer,Component> labelTable = new Hashtable<Integer,Component>();
labelTable.put(0,new JLabel("A"));
labelTable.put(20,new JLabel("B"));
slider.setLableTable(labelTable);
(3)当用户滑动滑块时,滑块的值就会在最小值和最大值之间变化,当值发生变化时,changeEvent就会发送给所有变化的监听器,为了得到这些改变的通知,需要调用addChangeListener方法并且安装一个实现了ChangeListener接口的对象,并重写StateChanged方法。如:
public void stateChanged(ChangeEvent event) {
JSlider slider = (JSlider)event.getSource();
int value = slider.getValue();
}