第七周学习视频(二)

一、文本框 JTextField

JTextField 组件允许用户通过键盘输入或编辑单行文本。
此类的构造函数包括:
JTextField()
JTextField(Document doc, String text, int columns)
JTextField(int columns)
JTextField(String text)
JTextField(String text, int columns)
eg. JTextField textField1 = new JTextField( 10 );//创建了带10个文本列的textField1
textField3.setEditable( false );//将文本段设为不可编辑的,用户不能改变文本段中的内容。

二、JPasswordField

扩展自JTextField,添加了专门用于处理口令的几个方法。
该组件显示的字符是用户输入的,但回显字符隐藏了实际字符,表示口令只应当由用户知道。
eg.JPasswordField passwordField = new JPasswordField( "Hidden text" );

三、TextField的触发事件及处理

(1)定义事件监听者
TextFieldHandler handler = new TextFieldHandler();
(2)注册事件监听者
例如: textField1.addActionListener( handler ); ……
(3)为监听者实现事件处理方法(实现监听接口中定义的方法)
private class TextFieldHandler implements ActionListener { { public void actionPerformed( ActionEvent event ) {……} }

四、内部类

嵌套类可以是静态的,也可以是非静态的。
非静态的嵌套类被称为“内部类”,经常用于事件处理。
内部类可以直接访问它的顶级类的变量和方法,即使这些变量、方法是私有的。

五、JOptionPane

基本对话框类型:
(1)ConfirmDialog:确认对话框,提出问题,然后由用户自己确认(按“Yes”或“No”按 钮)
(2)InputDialog:提示输入文本
(3)MessageDialog:显示信息
(4)OptionDialog:组合其它三个对话框类型。


这些对话框通过调用静态JOptionPane方法show XXX Dialog()来显示 ,如:
JOptionPane.showConfirmDialog():显示确认对话框。
JOptionPane.showInputDialog():显示输入对话框。
JOptionPane.showMessageDialog():显示信息对话框。
JOptionPane.showOptionDialog():显示选择性对话框。

六、按钮Button

用户单击按钮,可以触发特定的动作。
用户单击命令按钮时,会产生 ActionEvent 事件。
Java中的按钮类型:
(1)命令按钮:Jbutton
(2)状态按钮:复选框:JCheckBox ;单选钮:JRadioButton

七、组框JComboBox

文本域和下拉列表的组合,提供了一个项目清单,用户可以从中选择一个。
使用JComboBox类实现,一些常用的构造函数:
public JComboBox() : 使用缺省数据模型创建 JComboBox
public JComboBox(Object [] items) : 包含指定数组元素的组合框

八、列表JList

会显示一个项目序列,用户可以从中选择 一个或者多个项目。
既支持单选择列表,也支持多选择列表。
使用JList类创建。
用户单击其中的选项,会触发 ListSelectionEvent。
监听者必须实现ListSelectionListener接口,并实现其中的valueChanged()方法。


一些常用的构造函数:
public JList() : 使用空模型构造 JList
public JList (Object [] listData) :构造一个列表以显示指定数组listData的元素


eg. add( new JScrollPane( colorJList ) );//在JFrame中添加一个新的JScrollPane
与JComboBox不同,JList不提供滚动条,如果项目数多于可看到的行数,必须通过 JScrollPane对象来提供滚动能力。JScrollPane对象来提供滚动能力。 JScrollPane构造函数接收的实参是需要得到滚动功能的组件,此处是colorJList。

原文地址:https://www.cnblogs.com/caihan/p/12610681.html