社区
Java SE
帖子详情
java 保存 窗口对象
magic_kid_2010
2012-09-12 11:38:34
在一个java项目中,先运行程序,开启了一个JFrame窗口,保存到HashMap hm中;再重新运行该程序,开启另一个窗口,再保存到之前那个HashMap hm中。。。如何实现。求源码。谢谢。
...全文
193
6
打赏
收藏
java 保存 窗口对象
在一个java项目中,先运行程序,开启了一个JFrame窗口,保存到HashMap hm中;再重新运行该程序,开启另一个窗口,再保存到之前那个HashMap hm中。。。如何实现。求源码。谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
magic_kid_2010
2012-09-18
打赏
举报
回复
[Quote=引用 4 楼 的回复:]
每次运行java程序都会打开一个java虚拟机,虚拟机不会共享内存空间。所以,你第一个打开窗体件是1,第二个肯定也是1.
[/Quote]
但是,我现在需要保存每次打开的窗口。有什么好方法吗?
Siekoo
2012-09-13
打赏
举报
回复
楼主你的意识是所有打开的窗体引用都压入集合是吧??
修改main方法即可
main()
while(true)
{
询问是否新打开窗体
ManageJFrame.addFrame(名字,new JFrame());//不推荐这样new对象,这样虚拟机运行期间会销毁不了堆对象.
}
Siekoo
2012-09-13
打赏
举报
回复
每次运行java程序都会打开一个java虚拟机,虚拟机不会共享内存空间。所以,你第一个打开窗体件是1,第二个肯定也是1.
magic_kid_2010
2012-09-13
打赏
举报
回复
[Quote=引用 1 楼 的回复:]
这是两个不同的程序吧,可能吗
[/Quote]
我自己写的方法如下,但是并没有符合我的初衷。我初衷为,第一次运行TJFrame,输出size=1,再运行TJrame,输出size=2。我好像知道为什么错了,但是要如何修改才能完成我的目的。谢谢。
public class TFrame extends JFrame{
public TFrame() {
this.setTitle("1");
// this.setTitle("2");
// this.setTitle("3");
// this.setTitle("4");
this.setSize(100, 200);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ManageJFrame.addJFrame(this.getTitle(), this);
}
public static void main(String[] args) {
new TFrame();
}
}
---------------------------
public class ManageJFrame {
private static Map<String, JFrame> hm = new HashMap<String, JFrame>();
public static void addJFrame(String name, JFrame frame) {
hm.put(name, frame);
System.out.println("name=" + name);
System.out.println("size=" + hm.size());
}
}
magic_kid_2010
2012-09-13
打赏
举报
回复
我自己写的方法如下,但是并没有符合我的初衷。我初衷为,第一次运行TJFrame,输出size=1,再运行TJrame,输出size=2。我好像知道为什么错了,但是要如何修改才能完成我的目的。谢谢。
public class TFrame extends JFrame{
public TFrame() {
this.setTitle("1");
// this.setTitle("2");
// this.setTitle("3");
// this.setTitle("4");
this.setSize(100, 200);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ManageJFrame.addJFrame(this.getTitle(), this);
}
public static void main(String[] args) {
new TFrame();
}
}
---------------------------
public class ManageJFrame {
private static Map<String, JFrame> hm = new HashMap<String, JFrame>();
public static void addJFrame(String name, JFrame frame) {
hm.put(name, frame);
System.out.println("name=" + name);
System.out.println("size=" + hm.size());
}
}
杀手
2012-09-12
打赏
举报
回复
这是两个不同的程序吧,可能吗
[
java
]swing
窗口
演示 集合
对象
序列化
保存
与读取-纯小白文
本文介绍了一个使用
Java
Swing实现的简单登录注册界面中,如何通过序列化和反序列化技术来
保存
和读取用户数据。文章详细展示了如何创建可序列化的User类,以及如何在界面上通过按钮事件处理数据的添加、
保存
和读取。
保存
Java
程序状态及设置之
对象
序列化
本文介绍如何使用
Java
的
对象
序列化技术
保存
程序状态,包括
窗口
位置和数据库连接配置,确保程序重启后能恢复到上次关闭的状态。通过实现Serializable接口,创建序列化
对象
,将其状态
保存
到文件,以及在程序启动时从文件读取并恢复状态。
java
获取
窗口
截图
本文介绍在
Java
中实现
窗口
截图的方法,可用于调试、测试等。先阐述总体流程,接着说明具体步骤,包括导入必要库、获取屏幕尺寸、创建截图
对象
、
保存
截图,还给出完整代码示例、旅行图和类图,助开发者实现该功能。
java
保存
JFrame
窗口
的内容为图片
本文介绍了一种使用
Java
在JFrame中截取当前
窗口
并
保存
为图片的方法。通过创建BufferedImage
对象
来捕获JFrame的内容,并利用Graphics2D进行绘制,最终以JPEG格式
保存
到文件。
Java
中如何根据图片文件创建Image
对象
,且将Image
对象
保存
为文件形式
本文介绍了如何使用
Java
进行图像处理,包括创建与
保存
Image
对象
、将图像显示在界面上的方法。详细步骤涉及利用ImageIO读取文件、转换为BufferedImage类型以支持更多操作,以及通过ImageIcon和Graphics API在
窗口
中展示图像。
Java SE
62,622
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章