社区
Java SE
帖子详情
窗口隐藏后,组件上所绘的内容消失,怎么让它恢复?
tengfeng05
2010-06-06 02:24:32
如题,当窗口隐藏后,组件上绘制的内容消失了,如何让它恢复?我的绘图方法是自定义的,所以大家就别建议我用repaint、paint、paintComponent等方法了。
有没有办法在用户将窗口隐藏时,发一个消息给应用程序,程序接受到这个消息将组件上绘制的内容保存到一副图像中,然后组件恢复显示后再将这幅图像绘制到组件上去?
...全文
125
5
打赏
收藏
窗口隐藏后,组件上所绘的内容消失,怎么让它恢复?
如题,当窗口隐藏后,组件上绘制的内容消失了,如何让它恢复?我的绘图方法是自定义的,所以大家就别建议我用repaint、paint、paintComponent等方法了。 有没有办法在用户将窗口隐藏时,发一个消息给应用程序,程序接受到这个消息将组件上绘制的内容保存到一副图像中,然后组件恢复显示后再将这幅图像绘制到组件上去?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lixkyx
2010-06-06
打赏
举报
回复
[Quote=引用 3 楼 tengfeng05 的回复:]
引用楼主 tengfeng05 的回复:
如题,当窗口隐藏后,组件上绘制的内容消失了,如何让它恢复?我的绘图方法是自定义的,所以大家就别建议我用repaint、paint、paintComponent等方法了。
有没有办法在用户将窗口隐藏时,发一个消息给应用程序,程序接受到这个消息将组件上绘制的内容保存到一副图像中,然后组件恢复显示后再将这幅图像绘制到组件上去?
我的意思是,我要在一个组件……
[/Quote]
不太明白为什么repaint重绘不能解决你的问题。能否把代码贴出来看看?
不过,要想达到你的目的,恐怕最简单的办法就是干脆在窗口重新激活的方法windowActivated中重新执行一遍你的绘图方法了,虽然这样很耗资源,但是你要是赶时间,不妨先对付一下。
xu3352
2010-06-06
打赏
举报
回复
截屏,将图像存到BufferedImage中
tengfeng05
2010-06-06
打赏
举报
回复
[Quote=引用楼主 tengfeng05 的回复:]
如题,当窗口隐藏后,组件上绘制的内容消失了,如何让它恢复?我的绘图方法是自定义的,所以大家就别建议我用repaint、paint、paintComponent等方法了。
有没有办法在用户将窗口隐藏时,发一个消息给应用程序,程序接受到这个消息将组件上绘制的内容保存到一副图像中,然后组件恢复显示后再将这幅图像绘制到组件上去?
[/Quote]我的意思是,我要在一个组件,比如JPanel上绘图,但是由于所要绘制图形的特殊性,必须自定义绘图方法,我知道用repaint调用paint等方法可以让窗口恢复显示后重新显示绘制的图形,但有这个方法无法用于重新显示我绘制的图形。
zjnuliubo
2010-06-06
打赏
举报
回复
哈哈,挺好用的
healer_kx
2010-06-06
打赏
举报
回复
paint组件? 只能Paint组件的内容吧?
易语言-桌面悬浮菜单易语言
正常
隐藏
时:弹开后的菜单页:鼠标透过判定修正:如果开启了鼠标透过,在
窗口
未完全打开时点击了菜单,菜单会自动趋向关闭方向,不再理会停留在
窗口
上的鼠标,直到鼠标移开
窗口
后再移回来。弹开后的工具页:右下角三...
商用版本文本编辑器DotNetTextBoxV6.0.8Source 源码
2)改良了编辑器回车换行的方式,旧版本按回车后以段落换行(<P></P>)的方式现在已更改为换行,好处是按回车换行后行与行的间距不会过大了(可用新增的NewLineMode属性设置为P
恢复
为段落换行)! 3)改良了代码状态下编辑框...
Windows游戏编程系列之1:GUI
窗口
界面编程及游戏入门实战
具体的章节目录和课程
内容
如下所示: --------------------------------------------- Windows游戏编程系列之1: GUI界面编程及游戏入门实战 1、Windows创建第一个
窗口
WinMain入口函数 5 进行Windows编程的...
易语言程序免安装版下载
静态编译后的易语言EXE/DLL之间不能再共享譬如
窗口
、
窗口
组件
等类似资源,对于已经静态连接到一个EXE/DLL中的支持库,该支持库中的数据或资源将不能再被其它EXE/DLL中所使用的同名支持库访问。这是因为代码被分别...
sysinternals 工具集合 (20090226版)
PsKill 是一个终止实用工具,它不仅具有资源工具包所具有的功能,而且可以终止远程系统上的进程。您甚至不必在目标计算机上安装客户端,就可以使用 PsKill 终止远程进程。它是Sysinternals 命令行工具不断完善的 ...
Java SE
62,612
社区成员
307,332
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章