1.A 2.C 3.A 4.C 5.D 6.B 7.A 8.D 9 .D 10.C 11.A 12.B 13.C 14.C 15.A 16.B 17.B 18. D 19.B 20. C 21. D
1. 父类 2. 事件源 3. 建立事件监听器 4. Swing 5. AWT(Abstract Window Toolkit) 6. Dialog(对话框) 7. 布局管理器 8. setBounds() 9. Component 10. Border Layout 11. Border布局管理器 12. GridLayout 13. 下拉列表14. setFont() 15. java 16. “模型—视图—控制” 17. 非GUI 18. 根面板 19. 一个或多个 20. java.swing
1. 结合AWT事件模型并举例来说:
import java.awt.event.*;
(1)监听对象必须实现对应事件监听器的接口
class MyFirstFrame extends Frame implements ActionListener
{...}
(2)明确事件监听器的接口形式
public void actionPerformed ( ActionEvent event) {…}
(3)MyFirstFrame 类必须实现接口ActionListener中的所有方法。
(4)注册监听对象.
为了把MyFirstFrame对象注册为两个按钮的事件监听对象,必须在MyFirstFrame
的构造函数中添加语句如下:
cancelButton.addActionListener(this);
okButton.addActionListener(this);
2. 答:事件:对界面的某种操作,如按键. 单击鼠标. 鼠标移动等。
事件源:事件的产生者,通常是某一组件,如按钮等。
事件监听器:是某些事件的接口,其中定义了被监听的事件发生时系统要调用的方法。
事件处理过程由下面3步组成:
①为类声明需要的事件监听器接口。
②给事件源注册一个事件监听器。
③实现接口声明中事件处理方法。
1.
接口名:ActionListener
接口中的方法:public void actionPerformed(ActionEvent e)
1.
import java.awt.Color;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
/*
* 主窗体
*/
public class MyFrame extends Frame {
private static final long serialVersionUID = 6895463895656626294L;
private Frame frmMain; // 窗体
MenuBar mb; // 菜单栏
Menu mnuFile; // "文件"菜单
Menu mnuEdit; // "编辑"菜单
MenuItem miOpen; // "打开"菜单项
MenuItem miSave; // "保存"菜单项
MenuItem miClose; // "关闭"菜单项
MenuItem miCopy; // "复制"菜单项
MenuItem miPaste; // "粘贴"菜单项
public MyFrame() {
frmMain = new Frame("主窗体");
// 创建菜单栏
mb = new MenuBar();
// 创建菜单
mnuFile = new Menu("文件");
mnuEdit = new Menu("编辑");
// 创建菜单项
miOpen = new MenuItem("打开");
miSave = new MenuItem("保存");
miClose = new MenuItem("关闭");
miCopy = new MenuItem("复制");
miPaste = new MenuItem("粘贴");
}
public void showFrame() {
frmMain.setSize(800, 600);
frmMain.setLocation(100, 100);
frmMain.setBackground(Color.white);
frmMain.setVisible(true);
frmMain.setLayout(null);
frmMain.addWindowListener(new WindowHandler()); // 注册窗口监听器
// 将菜单栏放入窗体中
frmMain.setMenuBar(mb);
// 将菜单放入菜单栏中
mb.add(mnuFile);
mb.add(mnuEdit);
// 将菜单项放入菜单中
mnuFile.add(miOpen);
mnuFile.add(miSave);
mnuFile.add(miClose);
mnuEdit.add(miCopy);
mnuEdit.add(miPaste);
// 注册动作事件监听器
miClose.setActionCommand("miClose_Clicked");
miClose.addActionListener(new MenuHandler());
}
// 定义一个内部类,在这个类中编写窗口关闭事件处理程序。
private class WindowHandler extends WindowAdapter {
public void windowClosing(WindowEvent e) {
System.exit(0); // 退出应用程序,状态码 0 表示正常终止,非 0 表示异常终止。
}
}
// 定义一个内部类,在这个类中编写动作事件处理程序。
private class MenuHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {
if (e.getActionCommand() == "miClose_Clicked") {
System.exit(0); // 退出应用程序
}
}
}
}
public class TestMyFrame {
public static void main(String[] args) {
// 启动主窗体
MyFrame guiWindow = new MyFrame();
guiWindow.showFrame();
}
}