import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class r extends Applet implements ActionListener {
TextField text;
Button buttonEnter, buttonQuit;
public void init(){
text=new TextField("0",10);add(text);
buttonEnter=new Button("确定");buttonQuit=new Button("清除");
add(buttonEnter);add(buttonQuit);
buttonEnter.addActionListener(this);
buttonQuit.addActionListener(this);
text.addActionListener(this);
}
public void paint(Graphics g) {
g.drawString("在文本框输入数字字符回车或单击按钮", 10, 100);
g.drawString("第文本框显示该数的平方根", 10, 120);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == buttonEnter || e.getSource() == text) {
double number = 0;
try {
number = Double.valueOf(text.getText()).doubleValue();
text.setText("" + Math.sqrt(number));
} catch (NumberFormatException event) {
text.setText("请输入数字字符");
}
} else if (e.getSource() == buttonQuit) {
text.setText("0");
}
}
}
//两个错误 1,括号不匹配,2,分号不要用全角的
逻辑错误还是语法错误?
错误提示是什么
在18行 text.addActionListener(this);} 后面少了个大括号
在33行 {text.setText("请输入数字字符"); 后面的括号和分号应该是在英文状态下输入的,而你是中文状态下输入的!
OK啦··忽忽·
我也是新手 觉得那个文本事件没必要··number=Double.valueOf(text.getText()).doubleValue();写成number=Double.valueOf(text.getText());就好了
其余是我改的 希望可以多多交流 502197055
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class R extends Applet implements ActionListener {
TextField text;
Button buttonEnter, buttonQuit;
public void init() {
text = new TextField("0", 10);
add(text);
buttonEnter = new Button("确定");
buttonQuit = new Button("清除");
add(buttonEnter);
add(buttonQuit);
buttonEnter.addActionListener(this);
buttonQuit.addActionListener(this);
//text.addActionListener(this);
}
public void paint(Graphics g) {
g.drawString("在文本框输入数字字符回车或单击按钮", 10, 100);
g.drawString("第文本框显示该数的平方根", 10, 120);
}
public void actionPerformed(ActionEvent e)
{if(e.getSource()==buttonEnter)
{double number=0;
try{
number=Double.valueOf(text.getText());
text.setText(""+Math.sqrt(number));
}
catch(NumberFormatException event)
{
text.setText("请输入数字字符");
}
}
else if(e.getSource()==buttonQuit)
{text.setText("0");
}
}
}