• 沒有找到結果。

添加事件

在文檔中 程序设计大学教程 (頁 131-134)

第7章 程序设计案例分析

7.2 设计窗体

7.2.3 添加事件

前面我们设计的界面仅仅是一个外观,因为其没有事件处理程序,还不能响应事件,实 现用户操作。现在我们来给组件添加事件。

Java 编程语言使用事件来驱动 GUI 组件的行为。源对象可以触发事件,包含事件监听 器的一个或多个对象将通过事件处理程序响应这些事件。利用NetBeans IDE 可视化添加事 件处理程序要比手工编写更为方便。

我们可以使用组件的“属性”窗口或上下文菜单定义事件处理程序。使用“属性”窗口 定义事件处理程序的步骤如下(以startButton 的 Action 事件为例):

• 在“检查器”窗口中选择组件startButton,然后在“属性”窗口中单击“事件”。

• 在列表中单击所需事件的值actionPerformed。初始时,所有事件的值均为<无>。当 单击值字段时,<无>将替换为缺省事件名。如图 7-8 所示。

• 在属性表单中,键入所需的处理程序名称并按Enter 键,或者直接按 Enter 键以使 用缺省处理程序名称。如果未按Enter 键,将不生成任何代码。也可以单击事件的 省略号(...) 按钮以显示“处理程序”对话框。单击“添加”按钮,将新的名称 testWord 添加到处理程序列表中,然后单击“确定”。如图 7-9 所示。

• 此时系统自动生成事件监听器的代码和处理程序方法的空主体,如下所示。

//自动生成事件监听器的代码(不可编辑)

startButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { testWord(evt);

}

//处理程序方法的空主体(方法头不可编辑,但是方法体可编辑)

private void testWord(java.awt.event.ActionEvent evt) { // TODO 将在此处添加您的处理代码:

}

图 7-8 在组件属性窗口添加事件处理程序

图 7-9 定义事件处理程序 我们还可以使用上下文菜单定义事件处理程序:

• 在“文件”窗口、“项目”窗口或“检查器”窗口中,右键单击某个窗体组件。

• 从上下文菜单中选择“事件”,然后在子菜单中移动以选择事件。事件处理程序将 被赋以缺省名称。在“事件”子菜单中,粗体菜单项表示已定义的事件处理程序。

• 在源编辑器中添加新事件处理程序的代码。

选择要添加的 事件处理程序

如果多个事件具有相同的类型,或者使用的是相同的事件处理程序,此时可以对同一事 件的多个组件使用同一个处理程序。例如,本案例中,用作 ABCD4 个选择答案的 4 个 JRadioButton 组件 keyA、keyB、keyC、keyD 就是使用了同一个事件处理程序 keyChosen。

对于自动生成事件监听器的代码和处理程序方法,无法在源编辑器中手工直接删除。要

1: private void keyChosen(java.awt.event.ActionEvent evt) { 2: //选择答案

14: setupButtonActionPerformed(java.awt.event.ActionEvent evt) { 15: // 设置

16: setup();

17: } 18:

19: private void testWord(java.awt.event.ActionEvent evt) { 20: //测试

21: test();

22: }

7.3 设计菜单和对话框

设计菜单和对话框是图形界面应用程序的最常见特征,菜单可以用于调用不同的程序操 作模块,而通过对话框则可完成特定的设置或操作任务。

在文檔中 程序设计大学教程 (頁 131-134)