Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java setVisible(布尔)问题_Java_Swing_Visibility - Fatal编程技术网

Java setVisible(布尔)问题

Java setVisible(布尔)问题,java,swing,visibility,Java,Swing,Visibility,我有一个JFrame,上面有一些组件。我希望当我单击一个特殊按钮(例如退出按钮)时,该帧消失 我在exit按钮中编写了这段代码 this.setvisible(false); 但它只隐藏其上的组件,框架不会消失 当我点击退出按钮时,框架消失了,我该怎么办?下面是一个隐藏框架的按钮示例: final JFrame frame = new JFrame(); frame.setDefaultCloseOperation(DISPOSE_ON_CLOSE); final JButton hideBu

我有一个
JFrame
,上面有一些组件。我希望当我单击一个特殊按钮(例如
退出按钮
)时,该帧消失

我在exit按钮中编写了这段代码

this.setvisible(false);
但它只隐藏其上的组件,框架不会消失


当我点击退出按钮时,框架消失了,我该怎么办?

下面是一个隐藏框架的按钮示例:

final JFrame frame = new JFrame();
frame.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
final JButton hideButton = new JButton("hide frame");
frame.add(hideButton);
hideButton.addActionListener(new ActionListener() {

   public void actionPerformed(ActionEvent e) {
      frame.setVisible(false);
   }

});

frame.setVisible(true);
frame.pack();

下面是隐藏帧的按钮示例:

final JFrame frame = new JFrame();
frame.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
final JButton hideButton = new JButton("hide frame");
frame.add(hideButton);
hideButton.addActionListener(new ActionListener() {

   public void actionPerformed(ActionEvent e) {
      frame.setVisible(false);
   }

});

frame.setVisible(true);
frame.pack();

在您的调用中,
this.setVisible(false)
可能指的是按钮,而不是框架

您需要在框架上而不是按钮上调用setVisible()

还要确保在框架上调用dispose()来清理所有资源

此外,您还应该使用

setDefaultCloseOperation(DISPOSE_ON_CLOSE);
在创建框架的过程中,确保当用户单击右上角的“标准”关闭按钮(在窗口上)时,窗口已正确关闭和放置

本教程还可以帮助您更好地了解正在发生的事情:


在您的通话中
此.setVisible(false)
可能指的是按钮,而不是框架

您需要在框架上而不是按钮上调用setVisible()

还要确保在框架上调用dispose()来清理所有资源

此外,您还应该使用

setDefaultCloseOperation(DISPOSE_ON_CLOSE);
在创建框架的过程中,确保当用户单击右上角的“标准”关闭按钮(在窗口上)时,窗口已正确关闭和放置

本教程还可以帮助您更好地了解正在发生的事情:

在JFrame对象上调用它。 例子:
//当按下exit时

fr.setVisible(false);//fr是对JFrame类型对象的引用
`

在JFrame对象上调用它。 例子:
//当按下exit时


fr.setVisible(false);//fr是对JFrame类型对象的引用
`

请向我们展示相关代码。我想
这个
指的是JButton,而不是JFrame。那么,setvisible不会退出程序。@experimentX-一个应用程序中可以有多个JFrame,其中一些JFrame可以隐藏一段时间。请向我们展示相关的代码。我想
这个
指的是JButton而不是JFrame。那么,setvisible不会退出程序。@experimentX-在一个应用程序中可以有多个JFrame,其中一些JFrame可以隐藏一段时间。