gpt4 book ai didi

java - 关闭单个 JFrame 无法正常工作的错误

转载 作者:行者123 更新时间:2023-12-01 14:03:25 26 4
gpt4 key购买 nike

我决定在我的 JFrame 上放置“关闭”按钮。如果我只测试 JFrame 本身,它工作正常,但是当我尝试通过另一个类打开它后关闭它时,它不会关闭。

这是代码:

JButton btnClose = new JButton("Close");
btnClose.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
frame.dispose();
}
});
btnClose.setBounds(282, 666, 96, 50);
contentPane.add(btnClose);

我尝试过使用 frame.dispose()frame.close()super.dispose() 但唯一一个有效的是 system.exit(0); 但随后退出整个程序。

问题:

  • 如果我单独测试 JFrame,框架会正常关闭。
  • 如果我打开程序并导航到特定的 JFrame,关闭按钮不会执行任何操作。

请指教。

最佳答案

您是否在 ActionListener 中添加了一条显示语句以确保代码正在执行?

如果代码正在执行,那么问题可能是框架变量具有无效引用。

您不需要保留对框架的引用。相反,使用类似的东西:

Window window = SwingUtilities.windowForComponent( e.getSource() );
window.dispose();

关于java - 关闭单个 JFrame 无法正常工作的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19142890/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com