2008年9月18日 星期四

ZK 3.5.0 image 的 setContent 問題

ZK 可以用以下的方式顯示圖片:
<image id="photo" />
如果要清除圖片內容的話,可以用以下的方式:
photo.setContent(null); 
最近改用最新版的 ZK 3.5.0,上面的 會蹦出一個對話方塊,寫著 im == null。

問了 ZK 原廠,答案是:

舊版的 setContent 方法跟新版的 setContent 方法不太一樣:新版的 setContent 方法是一個 Overloaded 方法,有兩個版本:
public void setContent(org.zkoss.image.Image image)
public void setContent(java.awt.image.RenderedImage image)
所以要改用以下的寫法:
photo.setContent((org.zkoss.image.Image) null) 
可是我試了之後,還是一樣。後來看了一下 Javadoc 說明文件:
Calling this method implies setSrc(null).
In other words, the last invocatio of setContent(org.zkoss.image.Image)
overrides the previous setSrc(java.lang.String), if any.
我就把程式碼改了一下:
photo.setSrc(null); 
居然就恢復正常了!

沒有留言: