`
flyfox1982
  • 浏览: 78398 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ImageIcon缓存问题

阅读更多
在2BizBox 里面选择Image的时候(比如上传图纸的时候),发现一个这样的问题:


第一次上传的时候,选择一个 test.png 文件。

然后把test.png 删除,然后重新建一个 test.png的文件,再次选择test.png的时候,得到的总是前一个图片。 但是如果重新登录就没有这个问题了,所以怀疑是ImageIcon 的缓存造成的。 所以改了一把方法:


 public static ImageIcon getSelectedImageIcon(Component parent) {
File file = getSelectedImageFile(parent);
if (file != null) {
try {
ImageIcon icon = new ImageIcon(file.toURI().toURL());
icon.getImage().flush();
icon = new ImageIcon(file.toURI().toURL());
return icon;
} catch (MalformedURLException ex) {
ex.printStackTrace();
}
}
return null;
}




每次拿到图片后,都flush 一下,然后在重新拿。 不过这样的问题是导致每次拿了两次。

或者在每个用到的地方,调用flush方法,不过这样就会要改的地方很多。
分享到:
评论

相关推荐

    imageicon

    免费外国软件 可将bmp/JPG/PNG转为icon,功能还不错.

    关于ImageIcon和Icon使用的小例子

    配合我的博客的关于Image和ImageIcon的使用介绍以及转化的小例子,希望能对您有所帮助。

    java swing-ImageIcon的使用

    ImageIcon 是 Java Swing 提供的一个类,用于表示和操作图像图标。 通过 ImageIcon,我们可以加载图像文件(如 .png、.jpg 等格式)并将其转换为图标,然后在 GUI 界面中显示。它提供了一些方法来获取和设置图标的...

    flutter仿微信底部图标渐变功能的实现代码

    先给大家展示下效果图,感觉不错请参考实例代码。...ImageIcon会把一张图片变成单色图片,所以只要图片没有多色的要求,就可以用这个组件。 既然能改变颜色了,我们也需要知道pageView滚动的时候究竟要改什么颜色。

    JAVA管程解决哲学家就餐问题

    JAVA管程解决哲学家就餐问题 流程图 截图 运行结果 JAVA代码 很好的东西

    面向对象Java课程设计

    ImageIcon 翻开时的图标=null,关闭时的图标=null; public Block() { addActionListener(this); } public ImageIcon 获取翻开时的图标() { return 翻开时的图标; } public ImageIcon 获取关闭时的图标() ...

    图片缩放图片缩放

    authorware 图片缩放

    java中透明窗口 再也不用局限于矩形窗口了

    ImageIcon imageIcon =new ImageIcon("透明旋转枫.gif");//images这个文件 ImageIcon imagebutton=new ImageIcon("button.png"); JLabel j2=new JLabel(); public test(){ final JFrame f= new JFrame(); f....

    java的小程序

    import java.util.Scanner; import javax.swing.*; import java.awt.*; import java.awt.event.*; import javax.imageio.*; ...public class Jsq{ ... blaf9.setIcon(new ImageIcon(getClass().getResource(s009...

    firebase_image:Fire用于Firebase云存储的缓存Flutter ImageProvider

    用于Firebase云存储映像对象的缓存Flutter ImageProvider。 如何使用 确保已在要使用此平台的所有平台上 。 向FirebaseImage小部件提供图像的URI(例如gs://bucket123/userIcon123.jpg ),然后将其放入接受...

    java编写的类似文本编辑器的代码

    JButton compileButton=new JButton(new ImageIcon(loadImage("image/compile.GIF"))); JButton buildButton=new JButton(new ImageIcon(loadImage("image/build.GIF"))); JButton copyButton=new JButton(new ...

    JSP程序代码添加水印

    绝对好使。不好不要钱. import java.awt.*; import java.awt.image.*; import java.io.*;... ImageIcon imgIcon = new ImageIcon(filePath); Image theImg = imgIcon.getImage(); 继续? 下载吧。

    如何在JAVA中添加图片

    关键是这句 ImageIcon im=new ImageIcon("1.jpg");

    基于JAVA的拼图小游戏源码.zip

    基于JAVA的拼图小游戏源码。首先将一张大图分为9块小图片,而后将小图片封装在一个类(继承JButton)因此每张图片都为一个按扭 public class Cell extends JButton { ... public void setStateIcon(ImageIcon icon){

    angular-svg-directive:使用SVG作为imageicon的angular.js指令

    角度svg指令用于将svg用作图像/图标的angular.js指令

    Java保存与读取文件.rar

     Icon imageIcon=new ImageIcon("image.gif"); //实例化一个图标  writeIcon(imageIcon); //把图标写入到文件里(存储对象到文件)  Icon readIcon=(Icon)readIcon(); //从文件中读取对象  container.add(new ...

    java图片背景复选框Demo

    cb.setIcon(new ImageIcon(bufImg)); g2d.dispose(); srcImg = ImageIO.read(new File("images/imagecb/cb_selected.png")); bufImg = new BufferedImage(20, 20, BufferedImage.TYPE_INT_ARGB_PRE); g2d = ...

    Java实现图片的拖拉变形放大缩小.rar

    Java实现图片的拖拉变形放大缩小,四个方向都可以拉大缩小图片,技术方面,使用java.awt.geom 包中的AffineTransform 类来实现图片拖拉缩放功能。

    matlab改变GUI和figure左上角图标的方法并生成exe文件-修改Matlab Figure图标的方法.rar

    newIcon = javax.swing.ImageIcon figFrame = get; %取得Figure的JavaFrame。 figFrame.setFigureIcon; %修改图标 %%%生成exe文件的方法在附件里 2. 一般图形窗口的左上角图标的更改 clear newIcon=javax....

    制作小动画

    private ImageIcon imgPlane; private ImageIcon imgBullet; private int planeX; private int planeY; private int bulletX; private int bulletY; private int planeSpeed; private int bulletSpeed; ...

Global site tag (gtag.js) - Google Analytics