
posted @ 2008-01-28 09:48 寒武紀(jì) 閱讀(2788) | 評(píng)論 (4) | 編輯 收藏
posts - 37, comments - 143, trackbacks - 0, articles - 0 |
||
通常情況下,用戶(hù)應(yīng)該在簡(jiǎn)單字段(例如文本字段或組合框)中提供文本信息。雖然用來(lái)填充這些字段的應(yīng)用程序代碼通常比用來(lái)填充復(fù)雜窗口小部件(例如表或樹(shù))的代碼簡(jiǎn)單得多,但這些“簡(jiǎn)單”字段通常會(huì)給用戶(hù)帶來(lái)更多負(fù)擔(dān)。用戶(hù)必須確定哪些字段需要內(nèi)容、某個(gè)字段是否包含有效內(nèi)容以及應(yīng)該選擇哪些選項(xiàng)。JFace 的字段輔助支持提供了一些類(lèi)來(lái)幫助指導(dǎo)用戶(hù)完成輸入任務(wù)。 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() 按照幫助文檔的描述如下:為了在用戶(hù)從彈出窗口中選擇建議時(shí)獲取和設(shè)置控件內(nèi)容,必須向適配器提供 IControlContentAdapter 實(shí)例,該實(shí)例可以檢索和設(shè)置特定類(lèi)型控件的內(nèi)容。對(duì)于文本字段來(lái)說(shuō),可以使用 TextContentAdapter 類(lèi)。但是,也可以靈活地實(shí)現(xiàn) IControlContentAdapter,以便將內(nèi)容建議適配器與任何其他類(lèi)型的控件配合使用。 posted @ 2007-11-02 17:28 寒武紀(jì) 閱讀(2404) | 評(píng)論 (5) | 編輯 收藏 摘要: 每當(dāng)做開(kāi)發(fā)的時(shí)候,你有可能在一次調(diào)試程序的過(guò)程中打開(kāi)很多個(gè)編輯器,或是對(duì)Eclipse默認(rèn)的視圖布局不滿(mǎn)意,手工作了一些調(diào)整。如果在工作的過(guò)程你因?yàn)橛惺码x開(kāi)或是不小心把Eclipse關(guān)掉了,不用擔(dān)心,在你下次打開(kāi)的時(shí)候,Eclipse仍然會(huì)為您記住上次的工作場(chǎng)景。下面是一個(gè)例子場(chǎng)景:
 ... 閱讀全文
posted @ 2007-10-30 15:51 寒武紀(jì) 閱讀(8686) | 評(píng)論 (0) | 編輯 收藏 開(kāi)發(fā)基于Eclipse開(kāi)的RCP軟件可以直接加入Eclipse的幫助系統(tǒng),使您的產(chǎn)品更加完善。Eclipse幫助系統(tǒng)提供的良好組織模式以及基于lucene的全文搜索功能。在Eclipse的網(wǎng)站上有一篇文章專(zhuān)門(mén)介紹如何為Mail示例RCP添加幫助系統(tǒng)的,但是寫(xiě)的不完全,按照里面的說(shuō)明添加后無(wú)法正常地顯示幫助框架。網(wǎng)上有少部分文章也提及這個(gè)主題,但是都沒(méi)有說(shuō)明白。
經(jīng)過(guò)一翻摸索,最后終于折騰出來(lái),在這里記錄下面,與大家分享。如果你做過(guò)RCP產(chǎn)品,下面這些內(nèi)容應(yīng)該很熟悉。 1. 添加幫助的菜單。 在ApplicationActionBarAdvisor類(lèi)中加入幫助菜單項(xiàng)。代碼片斷如下: //幫助
2. 添加相關(guān)的依賴(lài)項(xiàng)。private IWorkbenchAction helpAction; /** * 創(chuàng)建操作 */ protected void makeActions(IWorkbenchWindow window) { .... /* 幫助 */ ..... helpAction = ActionFactory.HELP_CONTENTS.create(window); register(helpAction); ..... } /** * 填充主菜單 */ protected void fillMenuBar(IMenuManager menuBar) { /* 主菜單欄 */ IMenuManager mainMenu = getActionBarConfigurer().getMenuManager(); MenuManager helpMenu = new MenuManager("幫助(&H)", IWorkbenchActionConstants.M_HELP); helpMenu.add(introAction); helpMenu.add(helpAction); .... mainMenu.add(helpMenu); } 打開(kāi)plugin.xml,轉(zhuǎn)到"依賴(lài)項(xiàng)"的tab頁(yè),點(diǎn)擊"添加"按鈕,需要加入下面的這些依賴(lài)項(xiàng): 1. org.apache.lucene
2.org.eclipse.help.appserver 3.org.eclipse.help.base 4.org.eclipse.help.ui 5.org.eclipse.help.webapp 6.org.eclipse.tomcat 7.org.eclipse.ui.forms 3. 添加org.eclipse.help.toc擴(kuò)展點(diǎn) 這個(gè)非常容易,轉(zhuǎn)到"擴(kuò)展"tab頁(yè),點(diǎn)擊“添加”按鈕。網(wǎng)上或是相關(guān)的書(shū)籍有很多關(guān)于添加help內(nèi)容的介紹,為了節(jié)省篇幅,這里直接添加一個(gè)擴(kuò)展向?qū)?lái)完成。選擇"擴(kuò)展向?qū)?-->"幫助內(nèi)容",確定后可以看到“所有擴(kuò)展”的列表中多了一個(gè)org.eclipse.help.toc擴(kuò)展,這里可能需要修改一下,生成的toc.xml和testToc.xml里面的label屬性標(biāo)簽不能是亂碼,不然幫助框架會(huì)讀不出,到時(shí)候顯示不出幫助的組織結(jié)構(gòu)。 結(jié)構(gòu)如下: <extension
point="org.eclipse.help.toc"> <toc file="toc.xml"/> <toc file="testToc.xml" primary="true"/> </extension> 4. 部署產(chǎn)品配置 為您的RCP添加一個(gè)產(chǎn)品配置,打開(kāi)產(chǎn)品配置編輯器(xxx.product),轉(zhuǎn)到"配置"tab頁(yè),點(diǎn)擊“添加”,加入你的插件,然后點(diǎn)擊“添加必需的插件”,這樣在“插件和段”列表會(huì)看到你的插件以及你的RCP要完整啟動(dòng)的所有必需相關(guān)插件。在這里你應(yīng)該看到你在plugin.xml中依賴(lài)的那七個(gè)help相關(guān)的插件,以及一些以nl1結(jié)尾的插件,這些是語(yǔ)言插件。保存,轉(zhuǎn)到“概述”tab頁(yè),點(diǎn)擊"啟動(dòng)產(chǎn)品"。然后打開(kāi)“幫助--> 幫助內(nèi)容”,就可能看到你的幫助系統(tǒng)了。 到此一個(gè)完整的幫助系統(tǒng)就完成了。下面是一個(gè)截圖: ![]() posted @ 2007-10-25 10:30 寒武紀(jì) 閱讀(8945) | 評(píng)論 (3) | 編輯 收藏 最近為一個(gè)項(xiàng)目的服務(wù)器的做一個(gè)界面的時(shí)候,為了能把原來(lái)在后臺(tái)打印出來(lái)的相關(guān)信息重定向到GUI界面的時(shí)候,費(fèi)了一些心思。都是以前在實(shí)現(xiàn)的時(shí)候大多數(shù)信息的打印和測(cè)試時(shí)使用的都是System.out和System.err之類(lèi),圖個(gè)方便 1
![]() ![]() 2 ![]() 3 ![]() 4 ![]() 5 ![]() ![]() 6 ![]() 7 ![]() 8 ![]() 9 ![]() 10 ![]() ![]() 11 ![]() 12 ![]() 13 ![]() ![]() 14 ![]() 15 ![]() 16 ![]() ![]() 17 ![]() ![]() 18 ![]() ![]() 19 ![]() ![]() 20 ![]() 21 ![]() 22 ![]() 23 ![]() 24 ![]() 25 ![]() 把組件作為參數(shù)傳入到這個(gè)打印流中,并重寫(xiě)父類(lèi)的write(byte[] buf, int off, int len)方法,把寫(xiě)出的信息添加到組件上,注意到重載了帶OutputStream的構(gòu)造方法。 這里有二點(diǎn)必須注意,確保組件在調(diào)用打印信息添加前是已經(jīng)被正確創(chuàng)建的,另外必須注冊(cè)不同GUI組件對(duì)線(xiàn)程的訪(fǎng)問(wèn)形式,像上面的SWT就對(duì)界面的訪(fǎng)問(wèn)有嚴(yán)格的規(guī)定。 完成了PrintStream后,下面是如何使用,在我們啟動(dòng)界面后,使用下面的方式: 1
![]() 2 ![]() 3 ![]() ,這樣就可以把原來(lái)程序里的所有System.out和System.err信息轉(zhuǎn)移到你的GUI界面上。 posted @ 2007-08-27 19:07 寒武紀(jì) 閱讀(1486) | 評(píng)論 (2) | 編輯 收藏 摘要: 閱讀全文
posted @ 2007-08-15 09:55 寒武紀(jì) 閱讀(6233) | 評(píng)論 (0) | 編輯 收藏 |
||