回 帖 发 新 帖 刷新版面

主题:检查Application程序的错误!!

package untitled1;

import java.awt.BorderLayout;
import java.awt.Dimension;

import javax.swing.JFrame;
import javax.swing.JPanel;

/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2007</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class Frame1 extends JFrame {
    JPanel contentPane;
    BorderLayout borderLayout1 = new BorderLayout();

    public Frame1() {
        try {
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }

    /**
     * Component initialization.
     *
     * @throws java.lang.Exception
     */
    private void jbInit() throws Exception {
        contentPane = (JPanel) getContentPane();
        contentPane.setLayout(borderLayout1);
        setSize(new Dimension(400, 300));
        setTitle("Frame Title");
    }
}
package untitled1;
import java.awt.*;
/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2007</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class GraphicsAppleInOut {
    
    public static void main(String[] args) 
    {
     AppleFrame MyFrame=new AppleFrame();//创建对象MyFrame,形成图形界面   
    }
}
class AppleFrame extends Frame1{
   Label prompt;
   TextField input;
   Label output;
   AppleFrame()
   {
   [color=FF0000]super("Application Graphies Frame");[/color]
   setLayout(new FlowLayout());
   prompt =new Label("请输入一个字符:");
   input=new TextField(4);
   output =new Label("                 ");
   add(prompt);
   add(output);
   pack();
   show();
   }
   public boolean action(Event e,Object o){
      output.setText ("你输入的字符是:"+o.toString());
      return true;
  }
  public boolean handleEvent(Event evt){
      System.exit(0);
      return super.handleEvent(evt);
  }
}

大家帮帮忙哦怎么就是不能运行!!!

回复列表 (共1个回复)

沙发

public Frame1() {
改成:
    public Frame1(String title) {
        super(title);
原因:AppleFrame继承Frame1继承JFrame
JFrame有JFrame(String title)这个Constructor,Frame1可以用.
Frame1没有Frame1(String title)这个Constructor,AppleFrame就不能用.
注意"继承"的意义是继承的方法,AppleFrame可以用JFrame的方法,如setVisible()之类的,但是Constructor是不能继承的.AppleFrame要用JFrame的Constructor就必须在中间各个CLASS都写上(这里只需要在Frame1中写上)

我来回复

您尚未登录,请登录后再回复。点此登录或注册