我有一个名为Preferences的JDialog类.这个类创建一个构造函数,如:
class Preferences extends javax.swing.JDialog {
Preferences(java.awt.Frame parent,modal) {
super(parent,modal);
//......
}
}
在我的程序中,我希望在单击JFrame表单中的按钮时打开此首选项对话框.在按钮上注册动作监听器后,我将代码写入:
Frame fr = new Frame();
Preferences p = new Preferences(fr,false);
fr.add(p);
fr.setVisible(true);
当我运行此代码时,我得到以下异常(当我单击按钮时):
Exception in thread "AWT-EventQueue-0"
java.lang.IllegalArgumentException: adding a window to a container
这是什么意思,我该如何解决?