java设计一个求三角形面积的图形界面,要求通过3个输入框输入3个边长

下面是一个简单的 Java Swing 实现,包含三个文本框用于输入三角形的三条边:```java import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;public class TriangleAreaCalculator extends JFrame { private JLabel label1, label2, label3,...
java设计一个求三角形面积的图形界面,要求通过3个输入框输入3个边长
下面是一个简单的 Java Swing 实现,包含三个文本框用于输入三角形的三条边:
```java
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class TriangleAreaCalculator extends JFrame {
private JLabel label1, label2, label3, resultLabel, errorLabel;
private JTextField tf1, tf2, tf3;
private JButton calculateButton;
public TriangleAreaCalculator() {
setTitle("Triangle Area Calculator"); // 设置窗口标题
setLayout(new GridLayout(5, 2)); // 设置网格布局
// 创建文本标签和文本框
label1 = new JLabel("Enter the length of side 1:");
tf1 = new JTextField(10);
label2 = new JLabel("Enter the length of side 2:");
tf2 = new JTextField(10);
label3 = new JLabel("Enter the length of side 3:");
tf3 = new JTextField(10);
// 创建计算按钮和结果标签
calculateButton = new JButton("Calculate");
resultLabel = new JLabel("");
errorLabel = new JLabel("");
// 添加组件到窗口
add(label1);
add(tf1);
add(label2);
add(tf2);
add(label3);
add(tf3);
add(calculateButton);
add(resultLabel);
add(errorLabel);
// 添加按钮监听器
calculateButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
double a = Double.parseDouble(tf1.getText());
double b = Double.parseDouble(tf2.getText());
double c = Double.parseDouble(tf3.getText());
if (a + b <= c || a + c <= b || b + c <= a) {
throw new IllegalArgumentException("Invalid input! The sum of any two sides must be greater than the third side.");
}
double s = (a + b + c) / 2;
double area = Math.sqrt(s * (s - a) * (s - b) * (s - c));
resultLabel.setText(String.format("The area of the triangle is: %.2f", area)); // 显示计算结果,保留两位小数
errorLabel.setText(""); // 清除错误提示
} catch (NumberFormatException ex) {
resultLabel.setText("");
errorLabel.setText("Invalid input! Please enter a number.");
} catch (IllegalArgumentException ex) {
resultLabel.setText("");
errorLabel.setText(ex.getMessage());
}
}
});
pack(); // 使窗口大小自适应内容
setLocationRelativeTo(null); // 将窗口置于屏幕中央
setResizable(false); // 禁止调整窗口大小
setDefaultCloseOperation(EXIT_ON_CLOSE); // 设置窗口关闭行为
}
public static void main(String[] args) {
TriangleAreaCalculator calculator = new TriangleAreaCalculator();
calculator.setVisible(true);
}
}
```
通过绑定按钮的监听器,在输入三边长度后单击 “Calculate” 按钮,程序将计算三角形的面积,并在下方展示计算结果,当用户输入不合法数据时,也会在下方展示错误提示。2023-06-27
mengvlog 阅读 84 次 更新于 2025-09-09 10:07:04 我来答关注问题0
  • import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.*;public class TriangleAreaCalculator extends JFrame { private JLabel label1, label2, label3, resultLabel, errorLabel;private JTextField tf1, tf2, tf3;private JButton calculateButton;public TriangleA...

  •  摆渡的旱鸭子 java题:计算三角形和矩形的周长和面积,要求用接口,多态,继承,类四种不同方法分别写程序

    package day0507;public class Test { /** * @param args */ public static void main(String[] args) { Shap triangle=new Triangle(3, 4, 8);//新建一个三边长为3,4,5的三角形 Shap tri=new Triangle(3, 4, 5); Shap director=new Director(10, 20);//新...

  •  我说过我爱你シ 定义一个三角形类,为他添加字段(field)、属性(attributes)和方法。实现三角形周长和面积

    import java.math.*; import java.util.*; public class Triangle { /** * @param args */ int a,b,c; //三角形的三个边 double p; //求面积时海伦公式中的p double area; //面积 int circle; //周长 public Triangle(int a,int b,int c){ this.a=a; this.b=b; this.c=c...

  •  yinfengnong 编写一个Java应用程序,该程序中有2个类:Trangle、和Circle,分别用来描述“三角形” 和“圆”。

    class Triangle {private double a;private double b;private double c;private double perimeter;// 周长private double area;// 面积public Triangle(double a, double b, double c) {this.a = a;this.b = b;this.c = c;this.perimeter = a + b + c;double p = (a + b + c) / ...

  •  巨蟹神算子 JAVA:编写求解几何图形(如三角形,矩型,圆,多边型)的周长、面积的应用程序

    public class Test { public static void main(String[] args) { Shape triangle = new Triangle(3, 4, 5); System.out.println("三角形周长:" + triangle.perimeter()); System.out.println("三角形面积:" + triangle.area()); Shape circle = new Circle(1); System...

檬味博客在线解答立即免费咨询

报错相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部