eclipse,GEF 小技巧
1.在tabbedProperties(eclipse3.2以上支持)中,如果要建立一個(gè)treeview,且想要click任何一列都可以實(shí)現(xiàn)celledit,需要在創(chuàng)建treeview的時(shí)候加上style: SWT.FULL_SELECTION2.tabbedProperties中section的大小現(xiàn)在無(wú)法做到根據(jù)widget的大小自動(dòng)調(diào)整,目前只能用getMinimumHeight()返回一個(gè)固定值
ps: 今天找到更好的辦法了,只要用ISection的一個(gè)方法就可以了:shouldUseExtraSpace().看下它的注釋就完全明白了:
/**
* Determine whether this section would like extra height space in case
* there is some left. Normally this is true when the section is the last to
* be displayed on a tab or is the only section on a tab.
* @return <code>true</code> if this section would like extra height space.
*/
public abstract boolean shouldUseExtraSpace();
3.在build rcp程序的時(shí)候,要注意MANIFEST.MF文件中的require bundle.如果require的plugin不存在,那么很有可能出現(xiàn)插件已經(jīng)installed但是沒(méi)有resolved的情況(HELP-->About-->Configuration details)
4.fd.setFilterNames(new String[]{"圖片文件(*.jpg *.ico)"});
fd.setFilterExtensions(new String[]{"*.jpg;*.ico"});
要在一個(gè)過(guò)濾器中指定多個(gè)文件,Eclipse的FileDialog沒(méi)有寫這個(gè)注釋,但SWT是直接封裝的操作系統(tǒng)控件,在windows下是用;分隔。
參見(jiàn)win API 中OPENFILENAME的說(shuō)明。
lpstrFilter
指向一對(duì)以空字符結(jié)束的過(guò)濾字符串的一個(gè)緩沖。緩沖中的最后一個(gè)字符串必須以兩個(gè)NULL字符結(jié)束。
第一個(gè)字符串是過(guò)濾器描述的顯示字符串(例如,“文本文件”),第二個(gè)字符指定過(guò)濾樣式(例如,“*.TXT”)。要為一個(gè)顯示字符串指定多個(gè)過(guò)濾樣式,使用分號(hào)(“;”)分隔樣式(例如,“*.TXT;*.DOC;*.BAK”)。一個(gè)樣式字符串中可以包含有效的文件名字字符及星號(hào)(*)通配符。不能在樣式字符串中包含空格。
系統(tǒng)不能改變過(guò)濾器的次序。它按lpstrFilter指定的次序顯示在文件類型組合框中。
如果lpstrFilter是NULL,對(duì)話框不能顯示任何過(guò)濾器。
4.目前做的GEF項(xiàng)目需要在用戶direct edit的時(shí)候加上content assist,實(shí)現(xiàn)這個(gè)并不難,但是我發(fā)現(xiàn)用戶無(wú)法通過(guò)鼠標(biāo)雙擊來(lái)選定一個(gè)proposal.這個(gè)問(wèn)題困擾了我很久.后來(lái)才發(fā)現(xiàn)原來(lái)是textcelleditor給text安裝了一個(gè)focuslost listener,所以當(dāng)你單擊或雙擊content assist popup的時(shí)候,text的focus就lost了,就會(huì)調(diào)用focuslost方法.目前的解決辦法是override focuslost方法,讓它為空,雖然不是很完美的解決方案,但是至少可以讓用戶通過(guò)鼠標(biāo)來(lái)選擇proposal了
5.還是在GEF中,我用的是tabbedproperty來(lái)實(shí)現(xiàn)屬性視圖.property section有一個(gè)filter屬性,你可以用一個(gè)實(shí)現(xiàn)了IFilter的接口,來(lái)判斷這個(gè)section是否應(yīng)該在選中了一個(gè)node或connection后顯示
posted on 2007-04-11 17:31 小牛小蝦 閱讀(525) 評(píng)論(0) 編輯 收藏