关于对话框问题? 父类有无参构造器吗?或者没有构造器。否则不能调用super(),因为它不存在呀。你的窗体问题用内部类形式实现即可。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 父类是jDialog.public MyDialog extends JDialog{ MyDialog(Frame f) { JbInit(f); }}void JbInit(Frame f){ super(f); ... }出现error:Method required,but value found不知为何? 它认为这里你应该写super.method();super()只能在构造函数里边调用,而且必须是第一句 我把super(f)放到构造函数里去也不行啊public MyDialog extends JDialog{ MyDialog(Frame f) { super(f); JbInit(f); }} 应该没有问题,这样写最好把构造函数写成public的另外,把你的代码贴出来看看吧 package tictac;import java.awt.*;import javax.swing.*;import java.awt.event.*;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2002</p> * <p>Company: </p> * @author unascribed * @version 1.0 */public class MyDialog extends JDialog{ BorderLayout borderLayout1 = new BorderLayout(); JPanel jPanel1 = new JPanel(); JPanel jPanel2 = new JPanel(); JButton jButton1 = new JButton(); JPanel jPanel3 = new JPanel(); JLabel jLabel1 = new JLabel(); JLabel jLabel2 = new JLabel(); BorderLayout borderLayout2 = new BorderLayout(); public MyDialog(JFrame p) { try { // super(p);//问题就出在这里,帮我看看吧 jbInit(p); } catch(Exception e) { e.printStackTrace(); } } private void jbInit(JFrame p) throws Exception { //super(p); this.getContentPane().setLayout(borderLayout1); this.setSize(150,150); this.setResizable(false); this.setTitle("game over"); setVisible(false); setModal(true); jButton1.setText("ok"); jButton1.addMouseListener(new MyDialog_jButton1_mouseAdapter(this)); jLabel1.setAlignmentX((float) 12.0); jLabel1.setHorizontalAlignment(SwingConstants.CENTER); jLabel1.setText("hello"); jLabel2.setFont(new java.awt.Font("Dialog", 0, 18)); jPanel3.setLayout(borderLayout2); this.addWindowListener(new MyDialog_this_windowAdapter(this)); this.getContentPane().add(jPanel1, BorderLayout.NORTH); jPanel1.add(jLabel2, null); this.getContentPane().add(jPanel2, BorderLayout.SOUTH); jPanel2.add(jButton1, null); this.getContentPane().add(jPanel3, BorderLayout.CENTER); jPanel3.add(jLabel1, BorderLayout.CENTER); } void this_windowClosing(WindowEvent e) { setVisible(false); } void jButton1_mousePressed(MouseEvent e) { setVisible(false); }}class MyDialog_this_windowAdapter extends java.awt.event.WindowAdapter{ MyDialog adaptee; MyDialog_this_windowAdapter(MyDialog adaptee) { this.adaptee = adaptee; } public void windowClosing(WindowEvent e) { adaptee.this_windowClosing(e); }}class MyDialog_jButton1_mouseAdapter extends java.awt.event.MouseAdapter{ MyDialog adaptee; MyDialog_jButton1_mouseAdapter(MyDialog adaptee) { this.adaptee = adaptee; } public void mousePressed(MouseEvent e) { adaptee.jButton1_mousePressed(e); }} super(p);//问题就出在这里,帮我看看吧放在try前,一定要放在构造函数的第一句。 private关键字和继承中方法重写的问题 线程分析, 求教高手 数据库 求一下java for 循环 机器指令数 請教Gregorian.clear(Calendar.DATE)的功能失效問題 关于异常的一点小问题! 请教:关于匿名内部类 关于FileReader的疑惑 有关JTABLE的问题!急!在线等待! Who can give me javac.exe? jdk1.4不能运行了?????????????急!!!! mysql与JDBC问题
public MyDialog extends JDialog
{
MyDialog(Frame f)
{
JbInit(f);
}
}void JbInit(Frame f)
{
super(f);
...
}
出现error:Method required,but value found
不知为何?
super()
只能在构造函数里边调用,而且必须是第一句
public MyDialog extends JDialog
{
MyDialog(Frame f)
{
super(f);
JbInit(f);
}
}
import javax.swing.*;
import java.awt.event.*;/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2002</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/public class MyDialog extends JDialog
{
BorderLayout borderLayout1 = new BorderLayout();
JPanel jPanel1 = new JPanel();
JPanel jPanel2 = new JPanel();
JButton jButton1 = new JButton();
JPanel jPanel3 = new JPanel();
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
BorderLayout borderLayout2 = new BorderLayout(); public MyDialog(JFrame p)
{
try
{
// super(p);//问题就出在这里,帮我看看吧
jbInit(p);
}
catch(Exception e)
{
e.printStackTrace();
}
}
private void jbInit(JFrame p) throws Exception
{
//super(p);
this.getContentPane().setLayout(borderLayout1);
this.setSize(150,150);
this.setResizable(false);
this.setTitle("game over");
setVisible(false);
setModal(true);
jButton1.setText("ok");
jButton1.addMouseListener(new MyDialog_jButton1_mouseAdapter(this));
jLabel1.setAlignmentX((float) 12.0);
jLabel1.setHorizontalAlignment(SwingConstants.CENTER);
jLabel1.setText("hello");
jLabel2.setFont(new java.awt.Font("Dialog", 0, 18));
jPanel3.setLayout(borderLayout2);
this.addWindowListener(new MyDialog_this_windowAdapter(this));
this.getContentPane().add(jPanel1, BorderLayout.NORTH);
jPanel1.add(jLabel2, null);
this.getContentPane().add(jPanel2, BorderLayout.SOUTH);
jPanel2.add(jButton1, null);
this.getContentPane().add(jPanel3, BorderLayout.CENTER);
jPanel3.add(jLabel1, BorderLayout.CENTER);
} void this_windowClosing(WindowEvent e)
{
setVisible(false);
} void jButton1_mousePressed(MouseEvent e)
{
setVisible(false);
}
}class MyDialog_this_windowAdapter extends java.awt.event.WindowAdapter
{
MyDialog adaptee; MyDialog_this_windowAdapter(MyDialog adaptee)
{
this.adaptee = adaptee;
}
public void windowClosing(WindowEvent e)
{
adaptee.this_windowClosing(e);
}
}class MyDialog_jButton1_mouseAdapter extends java.awt.event.MouseAdapter
{
MyDialog adaptee; MyDialog_jButton1_mouseAdapter(MyDialog adaptee)
{
this.adaptee = adaptee;
}
public void mousePressed(MouseEvent e)
{
adaptee.jButton1_mousePressed(e);
}
}