问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Java jFrame中窗体的使用setVisible(false)后窗体不隐藏该怎么解决?(附测试源码)

发布网友 发布时间:2022-05-05 07:54

我来回答

3个回答

热心网友 时间:2023-10-16 12:52

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JFrameHideShow extends JFrame {
private static final long serialVersionUID = 1L;
public JFrameHideShow(String title) {
super("JFrameHideShow - "+title);
setSize(400, 200);
JButton jButton = new JButton(title);
this.add(jButton);

jButton.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent e) {
JButton btn=(JButton)e.getSource();
if(title1.equals(btn.getText()) ){
secondform.setVisible(true); //显示第二个窗体
firstform.setVisible(false); //同时隐藏第一个窗体,但执行后,该窗体没有隐藏。
}else{
firstform.setVisible(true); //同时隐藏第一个窗体,但执行后,该窗体没有隐藏。
secondform.setVisible(false); //显示第二个窗体
}
}
});
}

private static final String title1="AA";
private static final String title2="BB";
private static JFrameHideShow firstform;
private static JFrameHideShow secondform;
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
firstform = new JFrameHideShow(title1);
firstform.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
secondform = new JFrameHideShow(title2);
secondform.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

firstform.setVisible(true);
}
});
}
}

请参考一个例子——使用静态变量,不是太好,但只是作为简单的例子

热心网友 时间:2023-10-16 12:52

首先,不该在窗体上显示或者隐藏,而是应该将按钮放在面板上,面板放到窗体里。
通过切换面板,来实现你的要求

窗体永远只有一个,而里面可以有多种面板(panel)追问非常感谢,不过昨天经研究后发现,问题出在了aa firstform=new aa();这句话,这个是告诉系统在新建一个firstform,然后将firstform进行隐藏,而不是对当前的窗口进行隐藏,最后直接用setVisible(false);之后,问题解决,非常感谢

热心网友 时间:2023-10-16 12:53

aa firstform=new aa();
每次都是新实例来的、可不可见,无关要紧。怎么可能隐藏第个呢。

热心网友 时间:2023-10-16 12:52

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JFrameHideShow extends JFrame {
private static final long serialVersionUID = 1L;
public JFrameHideShow(String title) {
super("JFrameHideShow - "+title);
setSize(400, 200);
JButton jButton = new JButton(title);
this.add(jButton);

jButton.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent e) {
JButton btn=(JButton)e.getSource();
if(title1.equals(btn.getText()) ){
secondform.setVisible(true); //显示第二个窗体
firstform.setVisible(false); //同时隐藏第一个窗体,但执行后,该窗体没有隐藏。
}else{
firstform.setVisible(true); //同时隐藏第一个窗体,但执行后,该窗体没有隐藏。
secondform.setVisible(false); //显示第二个窗体
}
}
});
}

private static final String title1="AA";
private static final String title2="BB";
private static JFrameHideShow firstform;
private static JFrameHideShow secondform;
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
firstform = new JFrameHideShow(title1);
firstform.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
secondform = new JFrameHideShow(title2);
secondform.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

firstform.setVisible(true);
}
});
}
}

请参考一个例子——使用静态变量,不是太好,但只是作为简单的例子

热心网友 时间:2023-10-16 12:52

首先,不该在窗体上显示或者隐藏,而是应该将按钮放在面板上,面板放到窗体里。
通过切换面板,来实现你的要求

窗体永远只有一个,而里面可以有多种面板(panel)追问非常感谢,不过昨天经研究后发现,问题出在了aa firstform=new aa();这句话,这个是告诉系统在新建一个firstform,然后将firstform进行隐藏,而不是对当前的窗口进行隐藏,最后直接用setVisible(false);之后,问题解决,非常感谢

热心网友 时间:2023-10-16 12:53

aa firstform=new aa();
每次都是新实例来的、可不可见,无关要紧。怎么可能隐藏第个呢。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
华丽转身为什么在优酷看不了了之 《华丽转身:爱情不在服务区》txt全集下载 翡翠台华丽转身英文曲 matplotlib中plt.imshow函数画图出现的颜色问题 数字图像处理(c++ opencv):形态学图像处理-提取连通域 ...opencv做东西,网上的程序读着还可以,程序遇到问题不会改,一些函_百... 深度学习面试问题总结 | 传统图像处理——OpenCV 活虾如何在晚上保持存活状态进行保存? neu代表什么意思 民办学校和私立学校的区别是什么民办学校和私立学校的区别 ext datefield中的fieldlabel现实不正常 C#中hide()方法visible=false 有什么区别呀,是不是完全相同呀! ...如何往中间添加TextField/combobox等Ext控件 ExtJS 动态增加与删除items,动态设置textField可见与否 ext中,一个PANEL中的控件如何获取另一个panel中的值 ExportBigApplyExcel... Extjs问题,我想居中显示字段,但他一直是居左显示,代码如下 :_百度知... extjs中,如何在textfield后面加一个按钮,并且点击按钮要调用后台方法... Ext当输入查询条件的时候,为什么就报错 “对象不支持此属性或方法 ext... Ext form + radiogroup问题 请问delphi(ADO+ODBC+MYSQL)怎样动态创建 MySQL存储过程? 使用Ext 4.0 表单提交方式,其中textfield 设置默认值value为0,当我前台... 蜗牛可以放在热水里吗 Ext.form.TextField 添加事件 extjs 表单的textfield想直接用数据库中的字段写入textfield,而不是自己直接输入,该怎么写啊? 在EXTJS中,我需要把一个Panel中的几个textfield文本框居中 或者居右排... 蜗牛会游泳吗?放水里会淹死吗? ExtJS中一个textfield 通过setValue()后.但提交表单时,且得不到这个t... 蜗牛完全浸在水中会不会死?蜗牛是怎么呼吸的呢? 夏威夷椰子树怎么养,夏威夷椰子的养殖方法和注意事项 ext-js 隐藏TextField后,如何恢复显示的问题 垫江巴人咂黄精酒38度500毫升价格 请问ext 里的textfield 隐藏那前面的label属性 成都市国学经典诵读读本 初中 成都市国学经典诵读读本 初中答案 《中小学国学经典诵读丛书》内容编排怎么样啊? 阅读下列材料,回答后面的问题。  成都市中小学正掀起“国学经典诵读活动”的*,不少学校,正大力开 语文出版社出版的《中小学国学经典诵读丛书》之古诗词经典读本包含哪些书籍呢? 阅读下列材料,回答后面的问题。成都市中小学正掀起“国学经典诵读活动”的*,不少学校正大力开展国学 安装不了新浪微博,下载了好多次几个版本都显示未安装应用程序。 语文出版社出版的《中小学国学经典诵读丛书》都有哪些图书呀,了解的朋友给说一说? 有人知道语文出版社出版的《中小学国学经典诵读丛书》一套都是有哪些吗? 语文出版社出版的《中小学国学经典诵读丛书》主要包含哪些内容? 为响应成都市教育局在全市中小学开展国学经典诵读活动的号召,学校将正式开 展“国学经典诵读”活动。 语文出版社出版的《中小学国学经典诵读丛书》有阅读提示吗? 语文出版社出版的《中小学国学经典诵读丛书》可以通过线上进行购买吗? 有朋友知道语文出版社出版的《中小学国学经典诵读丛书》吗,怎么样? 为本教育的心理咨询范围和项目有哪些? 为本教育心理咨询有人了解吗? 心理咨询的特点有哪些 什么是心理咨询呢?中鹏教育