为什么下面程序中的mfield.getText()总是通不过编译,总是提示找不到符号?
import java.util.*;
import java.applet.*;
import java.awt.event.*;
import java.awt.*;
import java.awt.image.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.awt.Graphics;
import java.awt.Color;
import java.lang.Math.*;
import java.text.DecimalFormat;
import java.awt.event.*;class SolarSys extends JFrame implements ActionListener {
// 这个系统最多可以有多少个星球
int planetsNo = 19;
//表示目前有多少个球体在运行
int ExisitBalls = 0;
// 目前哪一个星球是被聚焦的,默认是0号,即第一个
int WhichPlanetFocus= 0;
// 这是绘画所有运动星球图画的区域
// 初始化记录所有星球类
// 这是在cvs上面的图像,它用于在上面画星球的图像
Image image;
// 这是image的Graphics
Graphics cvsimage, gimage;
// 时间间隔,在这段时间里星球作直线运动
double dt = 0.050;
double ddt = dt*dt;
JButton btnadd;
public SolarSys() {
// 这是整个图框的大小
this.setSize(200, 200);
this.setVisible(true);
JPanel btnpan = new JPanel();
btnpan.setLayout(new FlowLayout());
this.getContentPane().add(btnpan, BorderLayout.NORTH);
// 增加一个星球按钮
btnadd = new JButton("Add");
btnpan.add(btnadd);
btnadd.addActionListener(this);
this.pack();
}
// 这是主程序
void DrawSolar() {
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnadd) {
// 每按一下这个按钮,图面就淡出一个对话框以便让用户再加一个新的星球
SolarSys.AddOneBall add1 = new AddOneBall();
add1.setVisible(true);
}
}
class AddOneBall extends JFrame implements ActionListener{
public AddOneBall() {
this.setTitle("增加一个星球:");
this.setLayout(new GridBagLayout());
this.setLocation(200, 200);
GridBagConstraints gbc = new GridBagConstraints();
     gbc.anchor = GridBagConstraints.WEST; //设定Layout的位置
     gbc.insets = new Insets(2,2,2,2); //设定与边界的距离(上,左,下,右)
JLabel mlabel = new JLabel("m: ");
JTextField mfield = new JTextField("1",10);
JLabel earthlabel = new JLabel("earth");
     gbc.gridy=1;
     gbc.gridx=0;
     this.add(mlabel, gbc);
gbc.gridx=1;
     this.add(mfield, gbc);
gbc.gridx=2;
     this.add(earthlabel, gbc);
//-----
JLabel rlabel = new JLabel("r: ");
JTextField rfield = new JTextField("1",10);
JLabel distlabel = new JLabel("100000 ");
     gbc.gridy=2;
     gbc.gridx=0;
     this.add(rlabel, gbc);
gbc.gridx=1;
     this.add(rfield, gbc);
gbc.gridx=2;
     this.add(distlabel, gbc);
//--------
JLabel colorlabel = new JLabel("color: ");
JTextField colorfield = new JTextField("white",10);
     gbc.gridy=3;
     gbc.gridx=0;
     this.add(colorlabel,gbc);
gbc.gridx=1;
     this.add(colorfield,gbc);
//--------
JLabel namelabel = new JLabel("name: ");
JTextField namefield = new JTextField("",10);
     gbc.gridy=4;
     gbc.gridx=0;
     this.add(namelabel, gbc);
gbc.gridx=1;
     this.add(namefield, gbc);
//-------
JButton okbtn = new JButton("OK");
okbtn.addActionListener(this);
JButton cancelbtn = new JButton("Cancel");
cancelbtn.addActionListener(this);
gbc.gridy=5;
     gbc.gridx=0;
     this.add(okbtn,gbc);
gbc.gridx=1;
     this.add(cancelbtn, gbc);
this.pack();
}
public void actionPerformed(ActionEvent e) {
String cmd = e.getActionCommand();
if (cmd.equals("OK")) {
System.out.println(""+mfield.getText());
//AddaNewPlanet(Double.parseDouble(mfield.getText()), Double.parseDouble(rfield.getText()));
// this.setVisible(false);
}
if (cmd.equals("Cancel")) {
// 每按一下这个按钮,取消添加球体 }
}}
// 这里为了让程序有时间响应用户的操作,必须使用Thread。
class Thread8 extends Thread {
public void run() {
  while (true) {
DrawSolar();
     }
   }
}
}public class Test {
    public static void main(String[] args) throws IOException {
         JFrame dd= new SolarSys();
    }
}