Posted on 2006-09-18 15:08
小小涼粉 閱讀(719)
評論(0) 編輯 收藏
因為RCP的界面也是使用MVC模式的,于是想操作TableViewer、TreeViewer的時候,不應(yīng)該直接對Viewer進行操作,而是應(yīng)該操作viewer的input。修改以后,調(diào)用一下viewer.refresh()方法就可以了。
今天碰到的問題是,在一個widget中,使用
viewer.setInput(DisplayConst.publishingDevices.values());
可以順利更新
而在另外一個widget中,使用
??viewer.setInput(DisplayConst.locationTable.get(this.getUserName()));
就不能正常更新了。
測試了半天,又想了一下才明白,viewer.setInput以后,我們只能夠修改input的內(nèi)容,而不能修改input這個對象內(nèi)存地址的值。就和方法調(diào)用在java中只能傳值調(diào)用一樣了。