步骤1:创建项目

第一步,创建一个应用程序,并将其命名为 NumberAddition。

  1. 选择“文件” -> “新建项目”。或者在“工具栏”单击“新建项目”图标。
  2. 在弹出窗口的“类别”窗格中选择“Java”,在“项目”窗格中选择“Java应用程序”。单击“下一步”;
  3. 在“项目名称”中键入 NumberAddition,在“项目位置”中键入本地文件目录以保存项目;
  4. 确认复选框“设置为主项目”已被勾选。并确保复选框“创建主类”未被勾选。
  5. 点击“完成”

步骤2:构建界面

继续创建我们的界面。我们需要一个 Java 容器来放置其他将被调用的 GUI 组件。 在此步骤中我们使用JFrame 组件作为所需的容器。我们将该容器放置在一个新建包中, 该新建包位于“源包”中。


创建 JFrame 容器

  1. 在“项目”窗口右击 NumberAddition,选择“新建” -> “JFrame 窗体”。
  2. 在“类名”项键入 NumberAdditionUI。
  3. 在“包”项键入 my.numberaddition
  4. 单击“完成”。

IDE 根据类 NumberAdditionUI 在 NumberAddition 应用程序中创建了 NumberAdditionUI 窗体,并在 GUI Builder 中打开 NumberAdditionUI 窗体。包 my.NumberAddition 被设置为默认包。

添加组件:构建界面

下一步我们将通过“组件面板”为界面获得一个 JPanel 组件。 而后将向其中添加三个 JLabels 组件,三个 JTextFields 组件,三个 JButtons 组件。 如果您从未使用过 GUI Builder,应该先通过 GUI Building in NetBeans IDE 教程获得相关信息。

如果在您在 IDE 的右上角没有看到“组件面板”,请选择“窗口” -> “组件面板”调出。

  1. 首先在“组件面板”里选中 JPanel 组件并拖入 JFrame 中。
  2. 当 JPanel 组件高亮时,在其“属性”窗口点击位于 Border 项后的省略号(...)按钮来选择组件风格。
  3. 在 Border 对话框的列表里选择 TitleBorder 风格,并在“标题”项填入 Number Addition。单击“确定”按钮保存并退出。
  4. 您现在将看到一个标有 Number Addition 的空的 JFrame 组件,如上述截图。请依据以上截图添加三个 JLabels,三个 JTextFields 及三个 JButtons。

重命名组件

在此步骤中我们将重命名刚添加进 JFrame 的组件的显示文本

  1. 双击 jLabel1 并更改其文本内容为 First Number
  2. 双击 jLabel2 并更改其内容为 Second Number
  3. 双击 jLabel3 并更改其内容为 Result
  4. 双击 jTextField1,删除其示例文本。您需要重新调整 jTextField1 的初始大小。同样设置 jTextField2及 jTextField3
  5. 双击 jButton1,重命名为 Clear.
  6. 双击 jButton2,重命名为 Add.
  7. 双击 jButton3,重命名为 Exit.

步骤3:添加功能

在此步骤中,我们将为 Add, Clear 及 Exit 按钮赋上相应功能。而 jTextField1 及 jTextField2 将用于用户输入,jTextField3 则用于程序输出-我们将创建一个非常简单的加法计算器。让我们开始吧。



让 Exit 按钮工作

为了将功能赋于按钮组件,我们必须分配一个事件处理器给每个需响应的事件。 这样我们可以知道用户是否“按下”了按钮,无伦是通过鼠标还是键盘操作。 因此,我们将使用事件监听器(ActionListener)来处理响应事件(ActionEvent)。

  1. 右击 Exit 按钮。在弹出菜单中选择“事件” -> “Action” -> “actionPerformed”。 注意菜单中包含了许多您可以使用的事件处理!当您选择了 actionPerformed 事件处理,IDE 便会自动添加事件监听器(ActionListener)到 Exit 按钮中的并在监听器的 actionPerformed 方法内产生一个处理方法。
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
//TODO: Add your handling code here:
}
  1. private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) { System.exit(0); }

让 Clear 按钮工作

  1. 单击位于工作区顶部的“设计”标签返回“设计”界面。
  2. 右击 Clear 按钮(jButton1)。在下拉菜单中选择“事件” -> “Action” -> “actionPerformed”。
  3. 我们需要 Clear 按钮来清空全部 jTextFields 上的文本内容。 接下来向上一步一样添加代码。完成的代码如下:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
}

上述代码改变了三个 JTextFields 的文本内容,将其中的文本置空。

让 Add 按钮工作

Add 按钮将实现三个功能。

  1. 接收 jTextField1 及 jTextField2 中的用户输入并将输入的字符串转换为浮点型数据。
  2. 将上述输入的两个数相加得到结果。
  3. 将结果覆盖 jTextField3 中的文本以输出结果。
  4. 让我们开始吧!
  1. 点击工作区上方的“设计”标签返回设计窗格。
  2. 右击 Add 按钮(jButton3)。在弹出菜单中选择“事件” -> “Action” -> “actionPerformed”
  3. 我们将添加一些代码使得 Add 按钮工作。代码如下:
my.NumberAddition.NumberAdditionUI
NumberAdditionUI.java
NumberAdditionUI.java
jButton1ActionPerformed()
jButton2ActionPerformed()
jButton3ActionPerformed()
initComponents()
Generated Code
initComponents()
initComponents()
initComponents()
initComponents()
jButton3
jButton3ActionPerformed
NumberAdditionUI.java
NumberAdditionUI.java
jButton1ActionPerformed()
jButton2ActionPerformed()
jButton3ActionPerformed()
initComponents()
Generated Code
initComponents()
initComponents()
initComponents()
initComponents()
jButton3
jButton3ActionPerformed