标题:看看这个小程序错在哪?
只看楼主
cy2047
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-6-17
 问题点数:0 回复次数:9 
看看这个小程序错在哪?

两个数在按下按钮时相加,用消息框显示和数
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Caculator extends JFrame implements ActionListener{

/**
* @param args
*/
public Caculator(){
super("计算");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTextField num0=new JTextField(5);
JTextField num1=new JTextField(5);
JButton button=new JButton("计算");
JPanel p=new JPanel();
//num0.setEditable(true);
//num1.setEditable(true);
button.addActionListener(this);

p.add(num0);
p.add(num1);
p.add(button);
setContentPane(p);
pack();
setVisible(true);

}
public static void main(String[] args) {
// TODO Auto-generated method stub
Caculator cl=new Caculator();
}

public void actionPerformed(ActionEvent evt) {
// TODO Auto-generated method stub
int sum=Integer.parseInt(num0.getText())+Integer.parseInt(num1.getText()); //这里总是提示

num0,num1 can not be solved,为什么啊?
JOptionPane.showMessageDialog(null,sum+"");
}

}

搜索更多相关主题的帖子: 计算 public button import 
2006-06-17 17:59
private
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2006-5-1
得分:0 

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Caculator extends JFrame implements ActionListener{

/**
* @param args
*/
private JTextField num0,num1;

public Caculator(){
super("计算");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTextField num0=new JTextField(5);
JTextField num1=new JTextField(5);
JButton button=new JButton("计算");
JPanel p=new JPanel();
//num0.setEditable(true);
//num1.setEditable(true);
button.addActionListener(this);

p.add(num0);
p.add(num1);
p.add(button);
setContentPane(p);
pack();
setVisible(true);

}
public static void main(String[] args) {
// TODO Auto-generated method stub
Caculator cl=new Caculator();
}

public void actionPerformed(ActionEvent evt) {
// TODO Auto-generated method stub
int sum=Integer.parseInt(num0.getText())+Integer.parseInt(num1.getText()); //这里总是提示

JOptionPane.showMessageDialog(null,sum+"");
}

}


2006-06-17 18:14
private
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2006-5-1
得分:0 

你写的代码格式真是 很乱,要看好的代码,养好的风格

以后不要出这样的小错了!!


2006-06-17 18:15
private
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2006-5-1
得分:0 
我2楼代码没改完

public class Caculator extends JFrame implements ActionListener{

/**
* @param args
*/
private JTextField num0,num1;

public Caculator(){
super("计算");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
num0=new JTextField(5);
num1=new JTextField(5);
JButton button=new JButton("计算");
JPanel p=new JPanel();
//num0.setEditable(true);
//num1.setEditable(true);
button.addActionListener(this);

p.add(num0);
p.add(num1);
p.add(button);
setContentPane(p);
pack();
setVisible(true);

}


2006-06-17 18:18
cy2047
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-6-17
得分:0 
谢谢
2006-06-17 18:53
shiyide
Rank: 2
等 级:新手上路
威 望:4
帖 子:297
专家分:0
注 册:2006-2-22
得分:0 

楼主知道为什么要这样改吗`?
这是关于一个作用域的问题`
`


学好编程,为中国的软件事业出一份力。
2006-06-17 19:00
★王者至尊★
Rank: 1
等 级:新手上路
帖 子:528
专家分:0
注 册:2006-3-28
得分:0 
shiyide 还卖关子啊 呵呵

------Java 爱好者,论坛小混混,学习中------
2006-06-18 12:25
mordew
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-5-9
得分:0 
呵呵。那是个作用域的问题,
你要在其他方法里使用变量。
就应该把变量声明在方法外面。
这样才能使这个类中的所有方法都能共用。

when we live,we should study.
2006-06-18 12:35
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
有道理,这也是关于基础的变量作用域的问题
一般来说,在很多方法里面都要用到的变量最好声明成成员变量
如果只是本方法需要的话,还是在方法里面声明好一些,这样效率更高

可惜不是你,陪我到最后
2006-06-18 12:58
cy2047
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-6-17
得分:0 

明白了 谢谢各位

2006-06-21 09:08



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-72999-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.397150 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved