当前位置: 首页 > 面试题库 >

Java swing应用程序,单击按钮时关闭一个窗口,然后打开另一个窗口

隆钊
2023-03-14
问题内容

我有一个netbeans Java应用程序,该应用程序在启动时应显示JFrame(StartUpWindow类扩展为JFrame类),并带有一些选项,然后用户单击一个按钮,然后关闭JFrame并打开一个新的(MainWindow类)。

因此,我该如何正确执行此操作。我显然在StartupWindow中的按钮上设置了一个单击处理程序,但是我应该在该处理程序中添加什么以便关闭StartUpWindow并打开MainWindow?似乎每个线程也都有自己的线程…也可能由JFrames自己自动处理线程问题…


问题答案:

StartupWindow.java

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;


public class StartupWindow extends JFrame implements ActionListener
{
    private JButton btn;

    public StartupWindow()
    {
        super("Simple GUI");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        btn = new JButton("Open the other JFrame!");
        btn.addActionListener(this);
        btn.setActionCommand("Open");
        add(btn);
        pack();

    }

    @Override
    public void actionPerformed(ActionEvent e)
    {
        String cmd = e.getActionCommand();

        if(cmd.equals("Open"))
        {
            dispose();
            new AnotherJFrame();
        }
    }

    public static void main(String[] args)
    {
        SwingUtilities.invokeLater(new Runnable(){

            @Override
            public void run()
            {
                new StartupWindow().setVisible(true);
            }

        });
    }
}

AnotherJFrame.java

import javax.swing.JFrame;
import javax.swing.JLabel;

public class AnotherJFrame extends JFrame
{
    public AnotherJFrame()
    {
        super("Another GUI");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        add(new JLabel("Empty JFrame"));
        pack();
        setVisible(true);
    }
}


 类似资料:
  • 问题内容: 你好, 我正在使用Java Swing,并且想在单击按钮时关闭一个窗口。我不知道使用动作侦听器作为执行此操作的最佳方法,但是目前我正在编译错误,因此它一定是不正确的。 这是我的代码: 我遇到的问题是列出的最后一个类,它实际上只是关闭当前窗口,因此再次显示主菜单屏幕。我需要在该类中创建的静态引用。但是将其更改为静态是无效的修饰符吗? 我该如何解决? 问题答案: 试试这个 并发送一个实例给

  • 我在做安全的web应用程序。当我单击框架内链接时,它打开了另一个需要记录信息的窗口,但当我在selenium中执行此场景时,它单击框架内链接,系统显示两个窗口,window1显示空白页面,标题为“空白页面-窗口internet Explorer”,window2显示网站安全证书,标题为“空白页面-窗口internet Explorer”。 当我手动操作时,它显示一个窗口,但在自动化过程中,它显示两

  • 问题内容: 我有一个Java 7程序(使用WebStart技术,仅适用于Windows 7/8计算机)。 我需要添加一个函数,以便我的程序单击具有已知URL(https)的页面上的按钮。 有人建议使用WebKit SWT,但我去了他们的网站,他们说该项目已终止。(http://www.genuitec.com/about/labs.html) 其他人说,JxBrowser是唯一的选择,但是看起来它

  • 作为我程序的一部分,我需要有一个按钮,当用户单击它时,它会打开一个新窗口。 嗯,我想我应该有一个类来创建框架并按按钮调用它。但我不知道该怎么开始。我刚刚在程序中找到了我的按钮,但它不起作用。有人能告诉我怎么做吗?或对其进行编码。