关于JLabel的图片自适应
来源:互联网 发布:jenkins 构建php项目 编辑:程序博客网 时间:2024/04/29 21:56
好烦!又折腾了一下午,JLabel好讨厌!
众所周知,JLabel会根据添加的文字长度或者图片长度设置大小。在布局为null的组件里,可以使用setPreferredSize(Dimension)来设置其大小,可是我使用了该方法却无效。debug的时候,经过了该语句,JLabel长宽却一点变化都没有。
我程序的问题在于:我想要做一个剪切图片的效果,带有undo和redo。但是剪小了在JLabel显示出来了以后,想要undo,去看之前大的图像却发现只剩下被剪小的这一块了。于是debug,发现这时候的图片长度是没错的,是原来的大小,只不过JLabel的长度太小了,无法显示全部,所以看起来跟没有undo一样,只是改变了一下位置而已。
我改变JLabel里的图片的代码是这样写的,lbImage.setIcon(new ImageIcon(a));其中lbImage是 JLabel,a是BufferedImage。debug经过这里时,果然JLabel的大小没被改变,但是奇怪的是,之前重新显示新的变小的图片,debug经过那里时,JLabel的大小却跟着图片缩小了!于是我去研究了一下让图片变小的方法。发现该方法把之前JLabel里的image给替换成新的image了,然后再用该image来进行setIcon方法。在替换的那一步,JLabel的大小变大了!!于是总结如下:
在JLabel里进行不同大小图片的交替显示时,必须修改或替换掉之前的Image,而不是新建一个new ImageIcon(),否则大小不会变化!
JLabel为什么这么奇葩??
0 0
- 关于JLabel的图片自适应
- 在JLabel上显示图片,并且图片自适应JLabel的大小
- 在JLabel上显示图片,并且图片自适应JLabel的大小
- JLabel 显示图片并自适应控件大小
- 关于图片自适应的做法
- JAVA中关于向JLabel里面添加图片的方法例子
- 图片的任意拖动JLabel实现
- 关于JLabel中文件换行的问题
- 关于标签JLabel 的用法练习
- javascript关于图片自适应的小函数
- java 图片JLabel
- 关于自定义card时的图片自适应.(inflate的理解)
- 关于图片按比例自适应缩放
- Netbeans jlabel图片缩放代码
- JLabel的使用
- JLabel类的使用
- MySQL数据库写入图片并读取图片显示到JLabel上的详解
- JLabel
- 解决Python2.7的UnicodeEncodeError: 'ascii' codec can't encode异常错误
- IntelliJ IDEA 使用心得与常用快捷键
- ThreadPoolExecutor使用例子
- oracle 集群因子
- DSP编程中的字节对齐
- 关于JLabel的图片自适应
- Ecshop错误大汇总
- swift语言-布尔类型
- 我的业务员之路(1)
- 5.4mysql Every derived table must have its own alias
- exit和_exit两个函数的区别
- N!的最末位非零数
- eclipse打不开出现问题
- 常识:数据挖掘最常见的十种方法