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

如何在关闭并重新打开jframe后保存变量?

在关闭并重新打开JFrame后保存变量,可以通过以下步骤实现:

  1. 创建一个类,用于保存需要在关闭JFrame时保留的变量。这个类可以包含需要保存的所有变量,并提供相应的getter和setter方法。
  2. 在JFrame的关闭事件中,将需要保存的变量的值存储到上述类的实例中。可以通过添加WindowListener并重写windowClosing方法来实现。
  3. 在JFrame的关闭事件中,将需要保存的变量的值存储到上述类的实例中。可以通过添加WindowListener并重写windowClosing方法来实现。
  4. 在重新打开JFrame时,从保存类的实例中获取保存的变量的值,并进行相应的处理。
  5. 在重新打开JFrame时,从保存类的实例中获取保存的变量的值,并进行相应的处理。

需要注意的是,保存类的实例需要设计为单例模式,以确保在整个应用程序中只有一个实例,以便在不同的JFrame之间共享保存的变量。

这种方法可以在关闭并重新打开JFrame时保留变量的值,以便后续使用。

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

相关·内容

【Java AWT 图形界面编程】Canvas 中绘制超大图片 ( 使用鼠标拖动查看全图 | 设置 JFrame 窗口自动关闭 | 获取并绘制图片 | 鼠标拖动计算位移 | 画布偏移 )

一、Canvas 中绘制超大图片要点 ---- 1、设置 JFrame 窗口自动关闭 创建 JFrame 窗口后 , 通过调用 JFrame#setDefaultCloseOperation 可以设置窗口自动关闭...; // 创建 JFrame 窗口 JFrame frame = new JFrame("Large Canvas"); // 设置窗口关闭行为 点击右上角关闭按钮...关闭窗口并退出应用 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 2、获取并绘制图片 在 AWT 中 , 使用 Toolkit.getDefaultToolkit...startX 和 startY 变量中 , 这两个变量每次鼠标按下都会更新 ; // 为组件设置鼠标监听事件 addMouseListener(new MouseAdapter...窗口 JFrame frame = new JFrame("Large Canvas"); // 设置窗口关闭行为 点击右上角关闭按钮 关闭窗口并退出应用

1.4K20

【Java AWT 图形界面编程】使用小键盘按键缩放 Canvas 画布中绘制的背景图像 ( 键盘按键监听 + 绘制超大图像 + 鼠标拖动 + 鼠标滚轮缩放 + 以当前鼠标指针位置为缩放中心 示例 )

窗口自动关闭 | 获取并绘制图片 | 鼠标拖动计算位移 | 画布偏移 ) 博客中 , 绘制了超大图像 , 可以使用鼠标拖动 ; 在 【Java AWT 图形界面编程】使用鼠标滚轮放大缩小 Canvas...画布 ( 鼠标滚轮事件监听器 MouseWheelListener ) 博客中 , 新增鼠标滚轮缩放画布示例 , 但是使用鼠标拖动时 , 拖动的效果也随之缩放, 如 缩小画布后 , 移动鼠标 , 移动距离对应的缩放效果也随之缩小...@Override public void mouseWheelMoved(MouseWheelEvent e) { // 保存当前的鼠标位置及比例...记录鼠标按下时的坐标 startX = e.getX(); startY = e.getY(); // 保存当前的鼠标位置及比例...窗口 JFrame frame = new JFrame("Large Canvas"); // 设置窗口关闭行为 点击右上角关闭按钮 关闭窗口并退出应用

1.8K20
  • Java课程设计_java课设「建议收藏」

    当用户最终猜测成功后,就把当次的随机数和猜测次数放到文件夹内。 3.遇到的问题: (1).Guess里面每次产生的随机数m和最终猜测次数n一直不知道怎么传到sava里并保存输出到文件。...(2).怎么在生成的guessgame文件里追加内容,而不是每次运行程序后guessgame里的内容就被清空。....; public class Guess extends JFrame implements ActionListener { //Guess继承JFrame类,继承 ActionListener接口...偏小了,请重新再猜。”); else if (text > m) JOptionPane.showMessageDialog(null, “很遗憾!偏大了,请重新再猜。”)...fw.write(“随机数: “+m+”\n”+”猜测所用次数 : “+n+”\n”);//写入数据 fw.close();//关闭文件 } catch (IOException e) { //

    51720

    【Java AWT 图形界面编程】使用鼠标滚轮缩放 Canvas 画布中绘制的背景图像 ( 绘制超大图像 + 鼠标拖动 + 鼠标滚轮缩放 + 以当前鼠标指针位置为缩放中心 示例 )

    ; 如果放大图片就需要将图片往左上方移动 ; 如果缩小图片就需要将图片往右下方移动 ; 此时可以分析出 , 如果要实现 鼠标滚轮缩放的中心点设置为当前鼠标中心点 , 需要进行下面两个步骤的操作 : 保存当前鼠标指针指向的位置..., 以及鼠标指针指向位置对应图片中坐标位置的比例 ; 鼠标指针指向的位置不变 , 指向图片坐标比例不变 , 图片尺寸发生了改变 , 重新计算当前图片的放置位置 , 并设置图片位置 ; 这样图片缩放时..., 始终可以保证鼠标指向的部位保持位置不变 ; 1、保存当前鼠标指针指向的位置 首先 , 在类中定义如下成员字段 , pointer_x 和 pointer_y 记录的是鼠标指针指向的界面中 Camvas...在鼠标滚轮缩放完成后 , 再根据鼠标指针指向的位置和比例 , 结合图片缩放后的尺寸 , 重新计算画布偏移的位置 , 以达到鼠标指向的图片元素位置基本保持不变的目的 ; /** * 计算新的比例...窗口 JFrame frame = new JFrame("Large Canvas"); // 设置窗口关闭行为 点击右上角关闭按钮 关闭窗口并退出应用

    2.8K10

    swing.2窗体控件

    容器(Container)是Component的抽象类的一个子类,一个容器可以容纳多个组件,并使它们称为一个整体。容器可以用来简化和美化图形界面设计,以整体结构来布置界面。...可以通过继承JFrame类创建一个窗口,在这个窗口中添加组件,同时为组件设置事件,拥有最大化、最小化、关闭的按钮。 JFrame类常用的方法如表12.1所示。...接下来演示JFrame类的具体使用,如例12-1所示。...如果没有设置窗口的关闭方式,单击关闭按钮是不能真正关闭窗口的,即单击关闭按钮时窗口会消失,虽然窗口消失了,但是还在JVM中。...模态对话框是指用户需要等到对话框处理完毕后才能与其他窗口交互,而非模态对话框允许用户在使用对话框同时与其他窗口交互。

    8010

    GridLayout和

    vgap) 构造一个指定行和列数以及水平和垂直间距的GridLaout布局管理器 表12.19中列举了GridLayout类的构造方法,接下来通过一个案例来演示GridLayout布局管理器的使用,如例...例12-18运行结果 图12.20中,运行程序创建Frame窗体后,将布局设置为使用GridLayout布局管理器,设置以两行三列布局,并设置组件之间的水平和垂直间距都为10,之后添加6个按钮到Frame...makeButton("9", frame, gbaglayout, constraints); 30 constraints.gridwidth = 1; //重新设置...图12.21中,运行程序创建Frame窗口后,创建了GridBagLayout对象和GridBagConstraints对象,调用makeButton() 方法向 JFrame窗口填充按钮,并使用 GridBagConstraints...当一行结束后,重新设置 GridBagConstraints 对象的 gridwidth 为 1,最后设置 JFrame 窗口为可见状态,并可关闭。

    4500

    基于Java实现图像浏览器的设计与实现

    功能需求 功能一:我们可以在程序上进行随意绘画,点击保存按钮,我们可以将刚才绘画的内容进行保存,可以选择自己所需要的类型进行保存 功能二:在界面上按照提示,点击“浏览”按钮,打开文件对话框,选择图片,图片会显示在页面中...在打开图片后,点击“删除”按钮,则出现确定对话框,询问相关信息。 关键技术 在总体设计过程中涉及了多种技术,其中关键技术包括两个方面:浏览图片和删除图片。...浏览图片主要完成在本地磁盘里选取并打开图片,实现在页面中显示选择图片效果; 删除图片主要完成对图片的删除,实现页面上显示的图片的删除效果; 系统用例图设计 JPG系统用例图 图片查看系统用例图 二、概要设计...WindowCanvas 类实现了一个简单的绘图应用程序,可以创建了一个包含绘图面板和保存按钮的窗口应用程序,允许用户绘制图形并将绘制结果保存为PNG图像文件。继承自 JFrame,表示整个窗口。...它继承自JFrame,并实现了ActionListener接口,这意味着它可以响应按钮点击等事件。

    14710

    如何在 Linux 中将目录添加到 PATH 变量,方便执行自定义命令

    在本文中,我们将学习如何在 Linux 中将目录添加到 PATH 变量,以便能够方便地执行自定义的命令。 了解 PATH 变量 在开始之前,让我们先了解一下 PATH 变量的基本概念。...通过 export 命令添加目录 使用 export 命令可以将目录添加到当前会话的 PATH 变量中,但是这种方法仅在当前会话有效,重新打开终端后将失效。...修改配置文件永久添加目录 如果您希望将目录永久地添加到 PATH 变量中,即使在重新启动系统或打开新终端后仍然有效,您可以修改配置文件。 以下是修改配置文件添加目录的步骤: 打开终端。...使用文本编辑器(如 nano、vim 或 gedit)打开 ~/.bashrc 文件或 ~/.bash_profile 文件。您可以根据自己的系统和喜好选择其中之一。...保存文件并关闭编辑器。

    2.6K51

    如何在 Linux 中将目录添加到 PATH 变量,方便执行自定义命令

    在本文中,我们将学习如何在 Linux 中将目录添加到 PATH 变量,以便能够方便地执行自定义的命令。图片了解 PATH 变量在开始之前,让我们先了解一下 PATH 变量的基本概念。...通过 export 命令添加目录使用 export 命令可以将目录添加到当前会话的 PATH 变量中,但是这种方法仅在当前会话有效,重新打开终端后将失效。...修改配置文件永久添加目录如果您希望将目录永久地添加到 PATH 变量中,即使在重新启动系统或打开新终端后仍然有效,您可以修改配置文件。以下是修改配置文件添加目录的步骤:打开终端。...使用文本编辑器(如 nano、vim 或 gedit)打开 ~/.bashrc 文件或 ~/.bash_profile 文件。您可以根据自己的系统和喜好选择其中之一。...保存文件并关闭编辑器。

    2.5K30

    从弧到多线段:深入解析 Java 中的弧度转多线段算法!

    本文将详细讲解如何在 Java 中将弧线转化为多线段,讨论其核心数学原理,并通过实际案例帮助理解这一概念的应用场景。我们不仅会从深度解析转换的步骤,还会从广度角度延伸讨论该方法在其他领域的应用。...具体分析如下:代码的核心功能该代码根据给定的圆心、半径和起始/终止角度,将一个圆弧均匀分割为若干段,并打印出每个分割点的坐标。变量说明cx 和 cy:分别是圆心的 X 坐标和 Y 坐标。..., 100, 0, Math.PI, 50)); frame.setVisible(true); }}main 方法是程序的入口点:创建一个 JFrame 实例并设置标题。...设置关闭操作为退出应用程序。设置窗口大小为 400x400 像素。创建 ArcToLineSegments 实例,配置为绘制一个从 0 到 π(即 180 度)的弧线,并将其添加到窗口中。显示窗口。...总结:这段代码展示了如何在 Java Swing 中将弧线转换为一系列直线段进行绘制。主要步骤包括计算线段的角度间隔,迭代计算每个线段的端点坐标,并使用 Graphics2D 绘制这些线段。

    18022

    我把Idea给改了,看看有没有你常用的功能,没有,你告诉我,我来改

    BG-BOOM的1.1.0版本搞上线了,本次更新勇哥也是百忙之中挤时间,加班加点开发为粉丝,目的也主要是帮助大家提升开发效率,有更多摸鱼和内卷时间;好了,切回正题,本次带来更新的功能有点diao,希望大家喜欢并点赞...骨架的资源需要通过网络下载,如果网络抖动下载丢失资源了,整个项目就崩溃了 骨架的资源需要通过网络下载,如果网速慢,则创建过程可能需要1~2分钟 骨架中默认包括的文件与实践开发的项目不符合,往往创建完成项目后,...因此勇哥自行开发了一套基于逻辑外键的ER图模型: 自动识别表中的逻辑外键(一般是以_id结尾的字段) 可以动态显示/关闭逻辑外键关联线 可以ER图保存为图片 可以自有拖动位置、拖动调整大小...jFrame = new JFrame("刻度尺"); jFrame.setLayout(new BorderLayout()); jFrame.setPreferredSize...Mybatis-plus的代码拷贝,不够,粉丝可以继续提 在Bg-Boom中使用Mariadb客户端 Mariadb客户端依旧继承Mysql客户端的牛逼设计: 自动识别代码中的POJO类,并增加打开查询客户端的功能菜单和按钮

    94840

    JRadioButton和JCheckBox

    通常情况下,单选按钮(JRadioButton)显示一个圆形图标,并且在该图标旁设置一些说明文字,一般将多个单选按钮放置在按钮组中,当用户选中某个单选按钮后,按钮组中其他按钮将被自动取消。...表12.8中列举出了JCheckBox类的构造方法,接下来通过案例来演示JCheckBox类的使用,如例12-8所示。...jFrame.add(jLabel); 9 jFrame.add(new JCheckBox("读书")); // 创建复选框并添加到JFrame 10 jFrame.add...()); 13 jFrame.setSize(350, 150); 14 // 设置窗体关闭方式 15 jFrame.setDefaultCloseOperation...例12-8运行结果 图12.10中,运行程序先创建JFrame窗体,然后创建三个复选框并添加到JFrame窗体,创建的是带文本的、最初未被选定的复选框,可以单击复选框进行勾选。

    3800

    浏览器使用静态IP的操作指南

    今天我将为大家分享关于如何在360极速浏览器中使用静态ip的知识。静态ip可以帮助我们隐藏真实的IP地址,实现匿名浏览以及访问特定的区域限制网站。现在,让我们一起来了解并学习使用静态ip的方法吧!...第二步:打开360极速浏览器设置 在你打开360极速浏览器后,点击右上角的菜单按钮,然后选择「设置」选项。这将打开浏览器的设置界面,我们将在这里进行静态ip的配置。...勾选该选项后,你将看到可以输入静态ip和端口号的文本框。 在静态ip和端口号的文本框中,输入你获取到的静态ip地址和端口号,并确保代理类型选择为合适的协议,如HTTP或HTTPS。...第四步:保存并应用设置 完成静态ip地址的配置后,点击「保存」按钮,然后关闭设置界面。此时,你已经成功设置了静态ip地址。为了使设置生效,你可能需要关闭并重新打开360极速浏览器,或者刷新当前页面。...在360极速浏览器中,通过简单的设置,你就可以配置静态ip并享受其带来的便利。 希望本文对你学习如何在360极速浏览器中使用静态ip提供一些帮助。

    44220

    JAVA贪吃蛇小游戏源代码系列

    贪吃蛇小游戏运行结果如下: 启动界面: 运行界面: 重启界面: 源代码框架如下: 注:在运行程序的时候,得重新设计窗体的大小,以适合自己的电脑,其次,图片类和音乐类都保存在我自己电脑的...F盘的相应路径下,在运行程序的时候需要将图片类和音乐类保存到自己的本地磁盘路径中,然后在程序中改变路径。...backgroundMusic="src/snakeGame/music/backgroundMusic.wav"; } package snakeGame; /* Test类的主要任务是设计程序运行后的界面...* 程序启动的界面包括背景图片和进入运行界面的Button,点击按钮之后程序关闭启动界面进入到运行界面, * 运行界面设置在SnakeGame类中,Test类大体设置了运行界面的大小可见与否等。...ActionListener { public static RuleSetViewerDialog frame1; static JFrame frame = new JFrame( );

    60210

    Java中的屏幕共享

    打开两个浏览器窗口查看是否正常。该项目的源代码可在GitHub 上获得。Java 客户端接下来配置 Java 客户端并将它们与 JavaScript 应用程序集成。...engine.newBrowser();复制代码加载所需的 URL:browser.navigation().loadUrlAndWait("http://localhost:3000/streamer");复制代码加载 URL 后,...screen = sources.screens().get(0); tell.selectSource(screen, AudioCaptureMode.CAPTURE);});复制代码让我们保存...loadUrlAndWait("http://localhost:3000/receiver");复制代码要在 Java 应用程序中显示流媒体屏幕,创建 SwingBrowserView组件并将其嵌入到JFrame...结论在本文中,展示了如何在一个 Java 应用程序中共享屏幕并使用 JxBrowser 在另一个应用程序中显示它。 我创建了一个可以共享屏幕的简单 JavaScript 应用程序。

    1.9K20
    领券