- Шаг 3. Добавление функциональности
Шаг 3. Добавление функциональности
В этом упражнении мы собираемся задать функциональность кнопкам Добавить, Очистить и Выход. В поля JTextField1 и jTextField2 пользователь будет вводить данные, а в jTextField3 будет отображаться результат программы - то, для чего мы создали очень простой калькулятор. Давайте начнём.
Создание кода кнопки Выход
Для создания функциональности кнопкам, мы должны назначить обработчик событий для каждой кнопки. В нашем случае необходимо знать, когда кнопка была нажата, либо с помощью мыши либо клавиатуры. Таким образом, мы будем использовать Action в списке событий.
1) Щелкните правой кнопкой мыши на кнопку Выход. Из выпадающего меню выберите События > Action > actionPerformed. Обратите внимание, что меню содержит множество других событий, которые могут реагировать! В случае выбора actionPerformed, IDE автоматически добавит ActionListener для кнопки выхода и создаст метод actionPerformed обработчика события.
2) IDE откроет окно исходного кода и покажет участок кода, где нужно реализовать действие, которое обрабатывается при нажатии на кнопку. Исходный код имеет следующий вид:
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
3) Теперь мы добавим код, который должна выполнять кнопка Выход. Замените строку TODO на System.exit(0). Готовый код кнопки должен выглядеть следующим образом:
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);
}
Создание кода кнопки Очистить
- Нажмите на вкладке Проект в верхней части рабочей области, чтобы вернуться к редактированию дизайна;
- Щелкните правой кнопкой мыши на кнопку Очистить (jButton1). Из контекстного меню выберите События > Action > actionPerformed;
- Кнопка Очистить должна удалить весь текст из JTextFields. Для этого необходимо добавить код, аналогичный приведенному выше. Готовый исходный код должен выглядеть следующим образом:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
}
Этот код удаляет весь текст во всех трёх наших JTextFields, по сути он перезаписывает существующий текст.
Создание кода кнопки Сумма
Кнопка Сумма должна выполять три действия.
- Она будет принимать данные, введенные пользователем в jTextField1 и jTextField2 и преобразовывает их тип из строки в число с плавающей точкой;
- Она будет выполнять сложение двух чисел;
- И, наконец, будет конвертировать сумму в тип строки и помещать его в jTextField3.
Приступаем!
- Нажмите на вкладке Проект в верхней части рабочей области, чтобы вернуться к форме дизайна;
- Щёлкните правой кнопкой мыши на кнопку Сумма (jButton2). Из выпадающего меню выберите События > Action > actionPerformed;
- Добавте код для кнопки Сумма. Готовый код должен выглядеть следующим образом:
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// Сначала определяем переменные с плавающей точкой
float num1, num2, result;
// Преобразуем введённый пользователем текст в тип с плавающей точкой
num1 = Float.parseFloat( jTextField1.getText() );
num2 = Float.parseFloat( jTextField2.getText() );
// Теперь мы можем выполнить сложение
result = num1 + num2;
// Передаём результат сложения в поле jTextField3.
// Преобразуем тип данных из float в string.
jTextField3.setText( String.valueOf( result ) );
}
Теперь код нашей программы полностью готов, и мы можем запустить её.