控件、事件处理和布局介绍

发表时间:2017-05-09 13:46:16 浏览量( 32 ) 留言数( 0 )

学习目标:

1、了解Java的历史

2、为什么要学习Java语言

3、端正学习态度


学习过程:

这里我们就一一介绍一下swing中常用的一些控件。

attcontent/33bad418-85f8-4392-a6f0-86962995ff14.png

一、常用控件实例:

先看看那下图,初步了解一下每个控件的基本形式。

1、jLable

JLabel()JLabel()创建一个默认的 JLabel 实例
JLabel(String text)以指定的文本创建 JLabel 实例
JLabel(Icon image)以指定的图像创建 JLabel 实例
getText()返回标签显示的文本字符串
setIcon(Icon icon)标签将显示的图像内容
setText(String text)定义此组件将要显示的单行文本

2、JTextField

JTextField() 

构造一个新的文本输入框  

JTextField(String text) 

构造一个新的文本输入框 ,以指定文本作为初始文本

getColumns()

返回文本字段中的列数

setColumns(int columns)

置文本字段中的列数,然后使布局无效

setHorizontalAlignment(int value)

设置文本字段中文本的水平对齐方式:JTextField. LEFT

JTextField.CENTER JTextField.RIGHT

3、JTextArea

JTextArea() 

构造一个新的文本区

JTextArea(String text) 

用指定的显示文本构造一个新的文本区

setFont(Font f)

设置文本区的字体

getText()返回标签显示的文本字符串

4、JButton 

JButton( ) 

创建不带文本和图标的按钮

JButton(Icon icon) 

创建带图标的按钮

JButton(String text) 

创建带文本的按钮

JButton(String text, Icon icon) 

创建带文本和图标的按钮

setRolloverIcon(Icon img)

当鼠标经过时,显示指定的图标

setSelectedIcon(Icon img)

当选择按钮时,显示 img 指定的图标

5、JCheckBox 

JCheckBox( ) 

创建初始非选中的复选框,且不带文本或

图标 

JCheckBox(String text) 

用指定的文本创建初始非选中的复选框。

JCheckBox(String text, boolean selected) 

用指定文本创建一个复选框,并指定是否

初始选中该复选框

6、JComboBox 

JcomboBox()

创建一个下拉框实例

addItem(Object obj)

将项添加至项的列表

getItemAt(int index)

返回指定索引位置的列表项

getItemCount()

返回列表(作为对象)中的项数

getSelectedItem()

将当前选择的项作为一个对象返回

getSelectedIndex()

返回当前选择项的索引位置

二、事件处理器

1、什么是事件处理

一个事件要求特定的动作被执行,它被作为消息由外界或系统自身发送给GUI系统。这些事件包括来自计算机设备如鼠标键盘和网络端口的I/O中断,以及GUI系统的逻辑事件触发,比如一个按钮的ActionEvent事件。

2、示例手动编码。为按钮绑定单击事件,

首先,定义事件处理内部类,实现ActionListener接口。

    class ClickAction implements ActionListener{
    public void actionPerformed(ActionEvent event){
      System.out.println("用于执行了单击操作");
   }
  }

然后,给button增加监听器。

       button.addActionListener(new ClickAction());

三、布局管理器

布局管理器就是用户界面上的屏幕组件可以按照一定的格式布局,例如让组件水平排列,或按网格方式排列等等。布局管理器类是一组类,它实现 java.AWT.LayoutManager 接口,帮助在容器中放置组件。

Swing中可用的各种布局如下:BorderLayout、FlowLayout、GridLayout等等,Android的布局参考了Swing的实现,虽然两者之间实现完全不同,但使用上面有很多相似之处。在以后我们学习Android时候,再详细讲解布局。大家可自行参考相关书籍。