补充代码如下:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class Client extends JFrame implements ActionListener {
JButton output;
JLabel labelA, labelB, labelC;
JTextField inputA, inputB, inputC;
JTextArea showResult;
JPanel p;
Client() {
setLayout(new FlowLayout());
p = new JPanel(new GridLayout(3, 2));
labelA = new JLabel("边长A:");
inputA = new JTextField(10);
labelB = new JLabel("边长B:");
inputB = new JTextField(10);
labelC = new JLabel("边长C:");
inputC = new JTextField(10);
output = new JButton("计算");
showResult = new JTextArea(5, 30);
p.add(labelA);
p.add(inputA);
p.add(labelB);
p.add(inputB);
p.add(labelC);
p.add(inputC);
output.addActionListener(this);
add(p);
add(output);
add(showResult);
setTitle("求三角形面积");
setLocation(100, 100);
setSize(600, 160);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e) {
double a, b, c, p, area;
Double i;
String s;
a = Double.parseDouble(inputA.getText());
b = Double.parseDouble(inputB.getText());
c = Double.parseDouble(inputC.getText());
if (a > 0 && b > 0 && c > 0) {
if (a + b > c && b + c > a && a + c > b) {
p = (a + b + c) / 2;
area = Math.sqrt(p * (p - a) * (p - b) * (p - c));
i = new Double(area);
s = i.toString();
if (showResult.getText().equals("")) {
showResult.setText("三角形的面积为:" + s);
} else {
showResult.append("\n三角形的面积为:" + s);
}
} else {
if (showResult.equals("")) {
showResult.setText("不满足三角不等式。");
} else {
showResult.append("\n不满足三角不等式。");
}
}
} else {
if (showResult.equals("")) {
showResult.setText("边长不能为负!");
} else {
showResult.append("\n边长不能为负!");
}
}
}
public static void main(String[] args) {
new Client();
}
}
这段代码是一个简单的使用Java Swing构建的求解三角形面积的界面应用程序。它包含了用户输入三个边长,点击计算按钮后会根据输入计算出三角形的面积,并在文本框中显示结果。
内容由零声教学AI助手提供,问题来源于学员提问