繁体   English   中英

net上的主要gui和newjdialog混在一起

[英]main gui and newjdialog mixed up on netbeans

我通过按create new project在Netbeans上创建了新的Java应用程序,它创建了Java包。 这样完全可以了! 当我添加新的JFrame时,它会创建并自动执行MAIN METHOD,在完成Matisse之后,我的意思是放一些gui组件,我想在其中添加JDialog,然后继续右键单击并创建JDialog Form,它也创建了MAIN METHOD本身也是。 因此,两个MAINS混合在一起。 这一直困扰着我。 我的目标是创建一个名为new的JMenuItem,当我单击它时,我希望我的JDialog出现,并且类似项目创建对话框。 请帮助 ! 在这些情况下如何组合成不同的组件?

问候

“这总是令人困惑,请举一些例子”

我不确定是什么让我感到困惑。 您的程序应该只有一个带有main方法的启动类。 Netbeans将以JDialog形式为您创建一个main方法,因此只需删除main方法即可。 您唯一需要的main方法是JFrame主窗体。

您有JDialog表单

public class MyDialog extends javax.swing.JDialog {
    public MyDialog(final Frame parent, boolean modal) {
        super(parent, model);
        initComponents();
    }

    private void initiComponent() {
        ...
    }

    // delete the auto-generated main method
}

您的JFrame表单带有JMenuItem 将侦听器添加到JmenuItem以打开MyDialog

public class MyFrame extends javax.swing.JFrame {
    private javax.swing.JMenuItem jMenuItem1;

    public MyFrame() {
        initComponents();
    }

    /* Auto-generated code */
    private void initComponents() {
        jMenuItem1 = new JMenuItem();
        jMenuItem1.addActionListener(new java.awt.event.ActionListener(){
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem1ActionPerformed(evt);
            }
        });
    }

    /* Auto-generated method */
    private jmenuItemActionPerformed(java.awt.event.ActionEvent evt) {
        /* Your hand written code */
        MyDialog dialog = new MyDialog(MyFrame.this, true);
    }

    public static void main(String[] args) {

    }
}

“在这种情况下如何结合到不同的组成部分?”

那到底是什么意思


边注

  • 我建议您先使用Swing Tutotials并学习编写代码,然后再跳入GUI Builder工具。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM