天天看點

Eclipse 3.3裡新TreeViewer給EMF應用程式帶來的一個問題

以前在Eclipse 3.2裡做的一個EMF應用程式,到3.3裡發現一些TreeViewer裡标簽顯示的格式不對,例如原來顯示“Condition true”的,在3.3下可能顯示“1”。調試了一下發現這些TreeViewer在為每個節點獲得标簽時,若相應的XXXItemProvider實作了ITableItemLableProvider(即應用程式裡有TableViewer也用到這個XXXItemProvider)時,會調用getColumnText()而不是getText()來得到文本内容。

有了上面這個類,然後把原來setLabelProvider()裡的AdapterFactoryLabelProvider換成它就可以了。EMF以後的版本應該會解決這個問題。

繼續閱讀