首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

通过setVisible隐藏/显示的JFrame的窗口事件?

通过setVisible()方法来隐藏或显示JFrame窗口时,可以触发窗口事件。以下是一些常见的窗口事件及其概述:

  1. WindowOpened:当窗口被打开时触发。
  2. WindowClosing:当窗口被关闭时触发。
  3. WindowClosed:当窗口被关闭并释放所有资源时触发。
  4. WindowIconified:当窗口被最小化时触发。
  5. WindowDeiconified:当窗口从最小化恢复时触发。
  6. WindowActivated:当窗口被激活时触发。
  7. WindowDeactivated:当窗口失去焦点时触发。

要监听这些事件,可以使用JFrame的addWindowListener()方法注册一个WindowListener实例。例如:

代码语言:java
复制
JFrame frame = new JFrame("My Window");
frame.addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent e) {
        System.out.println("Window is closing");
    }
});

在这个例子中,当窗口被关闭时,会输出"Window is closing"。

需要注意的是,当使用setVisible()方法来隐藏或显示窗口时,窗口事件可能不会按照预期触发。为了确保窗口事件能够正确触发,建议使用其他方法来隐藏或显示窗口,例如调整窗口的大小或位置。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Java制作520表白代码——爱一个人需要理由吗?

总的来说,"520"作为表白日具有浪漫和特殊意义。它提醒人们在这个特别的日子里关注爱情、表达情感,并创造美好回忆。无论是通过言语、行动还是通过编程,"520"是一个适合向心爱的人表白爱意日子。...在代码背后,隐藏着深深情感和真挚情感表达。 ✨设计表白程序思路 关于程序设计思路这块我就不多说了,会的人看一下写代码就能秒懂,不会也不会在意程序设计思路(这个建立对象和写程序)。...new JFrame(""); frame1.setSize(screenwidth,screenheight);//设置窗口大小 frame1.setVisible(true...创建一个文本框来显示文字,这里采用JLabel */ //setVisible(false);// 本窗口隐藏, demo3 frame3...,这里采用JLabel */ //setVisible(false);// 本窗口隐藏, demo4 frame3=new demo4();//创建新窗口

27710

java实现靠边隐藏窗口

,让它初始化为普通状态 private Point hiddenPoint; // 隐藏窗体时,窗体位置 private Point visiblePoint; // 窗体处于显示状态时位置...java.awt.Toolkit; import java.awt.event.ComponentAdapter; import java.awt.event.ComponentEvent; /** * 为窗体添加控制窗口是否隐藏监听器...判断窗体位置,更新显示隐藏点,及窗体状态 * * @author Darkness * @version 1.0 * @since JDF 1.0 * */ public class...,更新显示隐藏点,及窗体状态 * * @param frame */ public static void checkAutoHiddenState(AutoHiddenFrame...(true); // 设置此窗体GlassPane为显示,以阻止子组件接收鼠标事件,减少事件触发 // 同样,移除此窗体上组件侦听器,防止再次触发窗体移动事件

2.5K10
  • WPF 获取全局所有窗口创建显示事件 监控窗口打开

    这是一个开发时辅助机制,用来让开发者不要随便弹出窗口,我又好奇这个监控模块是如何监控到我弹出一个窗口,学习了监控模块机制,就写了这个博客 在 WPF 里面,可以通过 EventManager 监听全局路由事件...,刚好窗口创建显示时,将会触发一些路径事件。...通过路由事件监听,即可了解是哪个窗口正在准备弹出。...于是就可以进行监控窗口创建显示 监听窗口 SizeChangedEvent 路由事件是比较靠谱方式,这个有一点点违反开发者想法,开发者默认想是使用 LoadedEvent 事件。...也可以在事件里面对每个窗口注入一些有趣逻辑,或者是监听窗口各个事件,输出更多日志,让开发者可以通过日志了解到当前有哪些窗口依然还在显示 这是另一位大佬写代码,请看 https://gist.github.com

    2K50

    GUI编程基础

    GUI编程 什么是GUI GUI全称为Graphical User Interface,图形化界面或图形用户接口,是指采用图形方式显示计算机操作环境用户接口。...GUI广泛应用是当今计算机发展重大成就之一,它极大地方便了非专业用户使用人们从此不再需要死记硬背大量命令,取而代之通过窗口、菜单、按键等方式来方便地进行操作。..."我第一个java图形化界面窗口"); //需要设置可见性 frame.setVisible(true); //设置窗口大小 frame.setSize...(true); //监听事件 监听窗体关闭事件 frame.addWindowListener(new WindowAdapter(){//窗口关闭需要做事情...= new JFrame("这是一个jframe窗口"); jFrame.setVisible(true); jFrame.setBounds(100,100,200,200

    21610

    java swing入门教程_java swing基础(菜鸟教程学习)

    javax.swing.*; public class HelloWorldSwing{ 创建并显示GUI,出于线程安全考虑 //这个方法在事件调用线程中调用 private static void...createAndShowGUI(){ //创建一个漂亮外观风格 JFrame.setDefaultLookAndFeelDecorated(true); //创建及设置窗口 JFrame frame...(JFrame.EXIT_ON_CLOSE); //多了一个对frame对象窗口操作,嗯 设计下窗口大小还不错 frame.setSize(350,200); //创建面板JPanel,这个类似于HTML...panel,因为我们要添加只能通过这个面板(当然还有其他方法哈,不止这一个) JPanel panel = new JPanel(); //日常添加到窗口frame中 frame.add(panel);...JLabel JLabel对象可以显示文本、图像或同时显示二者。可以通过设置垂直和水平对齐方式,指定标签显示区中标签内容在何处对齐。默认情况下,标签在显示区内垂直居中对齐。

    2.5K20

    中秋特辑:Java事件监听实现一个猜灯谜小游戏

    众所周知,JavaSwing是Java中关于窗口开发一个工具包,可以开发一些窗口程序,然后由于工具包一些限制,导致Java在窗口开发商并没有太多优势(当然也有一些第三方工具包也很好用),不过,在JavaSwing...何为事件监听 在Java中,事件监听(Event Listening)是一种处理用户交互机制。通过事件监听,你程序可以在用户进行某些操作(如点击按钮、输入文本、移动鼠标等)时执行特定任务。...例如,如果你想要在用户点击按钮时显示一条消息,你可以创建一个实现ActionListener接口类,并在actionPerformed方法中显示消息。...); frame.setVisible(true); } } 在这个程序中,我们创建了一个窗口,并在窗口中添加了一个按钮,此时通过调用addActionListener给按钮添加了一个点击事件...); setVisible(true); } 那么接下来步骤就非常简单了,对里面的控件进行事件监听: @Override public void actionPerformed(ActionEvent

    26440

    java swing一篇轻松学习(高考后可以自学)

    1、swing窗口和面板容器 窗口:(JFrame) 这里是类继承【JFrame】,然后完成基本设置,一定要显示true,不然看不见。...final long serialVersionUID = 1L; public Action() { //设置显示窗口标题 setTitle("大标题,就是左上角显示标题"); /.../设置窗口显示尺寸 setSize(666,200); //设置窗口是否可以关闭 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //...setVisible(true);//设置窗口可见 setDefaultCloseOperation(EXIT_ON_CLOSE);//别忘关闭窗口 } public static void...c) 如果在子菜单层次结构中存在指定组件,则返回 true isPopupMenuVisible() 如果菜单弹出窗口可见,则返回 rue isSelected() 如果菜单是当前选择(即高亮显示

    9.4K10

    java swing开发窗体程序开发(一)GUI编程

    //java Swing学习 //生成窗口 JFrame windows1=new JFrame("窗口1"); JFrame windows2...[这个只是关闭那个窗口] windows2.setVisible(true); windows2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE...类中,JFrame叫做底层容器,然而在实际开发和为了更好使用【例如实现同一个窗口切换选项卡有不同面板】 这些组件并不是直接添加在底层容器。...即通过选项卡可以切换不同组件(也可以是子面板JPanel),相当于,第一个选项卡点击 显示第一个界面,第二个选项卡点击,不开新窗口,就在该窗口显示第二个界面。...下面介绍最重要事件” 可以关注我博客,观看后续学习记录 下一节:java swing 窗体程序开发(二)事件(Action,Item,Document) https://blog.csdn.net

    2.8K30

    【Java】已解决:java.awt.HeadlessException

    一、分析问题背景 java.awt.HeadlessException是由Java AWT(Abstract Window Toolkit)抛出异常,通常发生在尝试创建图形界面元素(如窗口、对话框)或使用与显示设备相关...例如: JFrame frame = new JFrame("Example Frame"); frame.setSize(400, 300); frame.setVisible(true); // 在无显示设备环境中运行时可能抛出...三、错误代码示例 以下是一个可能导致java.awt.HeadlessException代码示例: public void createWindow() { // 创建一个JFrame窗口...JFrame frame = new JFrame("Test Window"); frame.setSize(400, 300); // 尝试在无头环境中显示窗口 frame.setVisible...; return; // 或者执行其他逻辑,如日志记录或退出程序 } // 如果环境支持图形界面,则创建窗口 JFrame frame = new JFrame

    31010

    创建一个窗口和按钮

    包里,定义一个窗口 aa.setTitle("餐厅点餐系统");//设置主窗口名字 JButton an1=new JButton("菜式导航");//新建按钮 aa.setSize(500,...(JFrame.EXIT_ON_CLOSE);//防止关闭后资源内存示范,默认关闭操作 aa.setVisible(true);//窗口显示BOOL值,和JFrame成对出现,如果没有将无法建立窗口...} public Screen() {//把初始化全部工作放在构造函数里 this.setTitle("餐厅点餐系统");//设置窗口名字 this.setSize(350,180...//this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//防止关闭后资源内存示范,默认关闭操作 this.setVisible(true)...;//窗口显示BOOL值,和JFrame成对出现,如果没有将无法建立窗口 } } 不需要建对象了,直接封装,aa变成this

    75530

    dotnet core 通过修改文件头方式隐藏控制台窗口

    在带界面的 dotnet core 程序运行时候就会出现一个控制台窗口,本文告诉大家使用最简单方法去隐藏控制台窗口。...在 VisualStudio 2017 格式,如果是 dotnet framework 程序,在没有设置 OutputType 为 WinExe 是时候,启动程序会显示一个控制台窗口。...如果这时使用跨平台多项目,就会看到 dotnet core 项目依旧会显示黑色窗口 最简单方法是通过修改 PE 文件方式,在 NSubsys就是编写了一个 Task 用来在编译完成获取 Exe 修改...PE 文件格式,隐藏黑色窗口 安装 NSubsys 方法就是从 Nuget 搜索 NSubsys 然后使用 dotnet publish 一下就可以了 如果想知道为什么你安装了一个 Nuget 就可以帮你修改请看如何创建一个基于...所以只需要通过修改 PE 文件方式去告诉系统,这个软件是图形软件,就不会显示控制台。

    75220

    dotnet core 通过修改文件头方式隐藏控制台窗口

    在带界面的 dotnet core 程序运行时候就会出现一个控制台窗口,本文告诉大家使用最简单方法去隐藏控制台窗口。...在 VisualStudio 2017 格式,如果是 dotnet framework 程序,在没有设置 OutputType 为 WinExe 是时候,启动程序会显示一个控制台窗口。...如果这时使用跨平台多项目,就会看到 dotnet core 项目依旧会显示黑色窗口 最简单方法是通过修改 PE 文件方式,在 NSubsys就是编写了一个 Task 用来在编译完成获取 Exe 修改...PE 文件格式,隐藏黑色窗口 安装 NSubsys 方法就是从 Nuget 搜索 NSubsys 然后使用 dotnet publish 一下就可以了 ?...所以只需要通过修改 PE 文件方式去告诉系统,这个软件是图形软件,就不会显示控制台。

    1.1K10

    JAVA学习Swing章节标签JLabel中图标的使用

    javax.swing.JLabel; import javax.swing.SwingConstants; import javax.swing.WindowConstants; /** * 1:在Swing中显示文本或提示信息方法是使用标签...,它支持文本字符串和图标 * 重点是标签含有文本字符串和图标 * * 2:标签可以显示一行只读文本,一个图像或带图像文本,它并不能产生任何类型事件 * 只是简单显示文本和图片,但是可以使用标签特性指定标签上文本对齐方式...* 重点是只是简单显示文本和图片 * * 3:JLabel标签构造方法,带图标,并且设置图标水平对齐方式,带文字,并设置文字水平对齐方式 * 带图标带文字,并且设定标签内容水平对其方式...* * 4:Swing上面的图标可以放置在按钮,标签,等组件上面,用于描述组件用途 * * 5:Swing中通过Icon接口来实现创建图表,可以在创建时给定图标的大小,颜色等特性 *...JFrame();//创建一个JFrame窗口 Container container=jf.getContentPane();//将窗口转换为容器 container.setBackground

    1.9K60

    JavaSwing矩形绘制教程

    可以使用JavaSwing中JFrame类创建一个窗口,代码如下:import javax.swing.JFrame;public class RectangleDrawing extends JFrame...true);}public static void main(String[] args) {new RectangleDrawing();}}这个代码创建了一个名为“Rectangle Drawing”窗口...可以使用JavaSwing中Graphics类进行绘制,代码如下:import java.awt.Graphics;import javax.swing.JFrame;public class RectangleDrawing...实现用户交互最后,我们可以通过实现鼠标事件来实现用户交互。例如,可以在用户点击鼠标时在图形界面上绘制一个矩形。...通过创建图形界面、绘制矩形、修改矩形样式和实现用户交互等步骤,我们可以实现一个简单矩形绘制程序。希望本教程能够对Java编程初学者有所帮助。

    20230
    领券