问题:
(问答题)问答题:请修改下面的Java Applet程序,使其能正确计算山的高度。
程序的功能是计算山顶的高度,计算方法是:该山顶由a点量得仰角度数为a度,由b点量得仰角度数为b度,且测得a,b点之间的距离为c米,求山的高度。要求窗口中有3个输入框,分别作为a,b,c的输入,一个按钮点击后进行计算,结果显示在另一个文本框中(这个文本框不可编辑)。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
/*
<applet code="ex6_3.class" width=800 height=400 >
</applet>
*/
public class ex6_3 extends Applet implements ActionListener {
Panel pane = new Panel();
Label 11 = new Label("a 点仰角:");
TextField tfl = new TextField(5);
Label 12 = new Label("b 点仰角:");
TextField tf2 = new TextField(5);
Label 13 = new Label("a,b 之间距离:");
TextField tf3 = new TextField(5);
Button btn = new Button("OK");
Label 14 = new Label("山高");
TextField tf4 = new TextField(10);
public void init() {
pane.add(11);
pane.add(tfl);
pane.add(12);
pane.add(tf2);
pane.add(13);
pane.add(tf3);
pane.add(btn);
pane.add(14);
pane.add(tf4);
add(pane);
btn.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
double a = Double.parseDouble(tfl.getText());
double b = Double.parseDouble(tf2.getText());
double c = Double.parseDouble(tf3.getText());
double h = c / Math.abs(1.0 / Math.tan(Math.toRadians(a)) - 1.0 / Math.tan(Math.toRadians(b)));
tf4.setEditable(false);
tf4.setText(Double.toString(h));
}
}
提问:
请问在Java Applet中如何实现用户输入的仰角和距离来计算山的高度?这个问题的重点是考察什么知识点?这个章节的主要内容是什么?
复习要点:
理解Java Applet的基本结构和事件处理机制,掌握AWT组件的使用,以及如何通过数学计算实现特定功能。
查阅资料方向:
查阅Java Applet和AWT组件的相关书籍和在线资源,深入了解事件驱动编程和图形用户界面的设计。
参考答案: