SaveAction part 2

January 19, 2008 on 12:16 am | In NetBeans, Action, DataObject, Node | NetBeans Version: 6.0 | 1 Comment

說真的,SaveAction 的問題經常困題著筆者。最近,筆者因為要離職了,想說要多利用一下時間把 NetBeans 的東西學一學。所以,筆者就照著 NetBeans RCP 的書中第十章的範例練習。只不過,筆者是執行在 NetBeans 6.0,而非書中的 NetBeans 5.5.1。當然,在筆者心中存著一個想法: NetBeans 6.0 跟 NetBeans 5.5.1 一定有什麼地方不一樣。

經過一些時間之後,筆者發現了一個現象,照書中的範例,居然沒辦法讓 SaveAction 啟用。這…對筆者來說,可以說是其恥大辱啊。我怎麼可能會沒辦法讓它啟用,我都寫過了一篇文章來討論如何啟用 SaveAction。

後來,筆者發現,原來是筆者忘了把 Node 加入 Lookup 之中。

當筆者解決完這個問題後,筆者就想起之前寫的那篇文章中的專案『EnableSaveAction』是用 NetBeans 5.5.1 。如果我們把它移到 NetBeans 6 之後,是不是 SaveAction 就會改變了。

結果,答案果然是 NetBeans 6 把這個問題給修正了。

大家可以在這邊下載 NetBeans 6 的版本:下載

CallbackSystemAction and Lookup

December 29, 2007 on 9:40 pm | In TopComponent, NetBeans, Lookup, Action, Tips | NetBeans Version: 5.5.1 | No Comments

這一兩天,有一個中國的朋友寫信來問我一個問題,他/她說:為什麼 CallbackSystemAction 跟 Lookup 一起合著使用時, action map 即使設定了,也無法被 enable。當然,我馬上想到的是,他應該沒有設定對,所以會造成無法被 enable。後來,我看一看我之前的 source code 才發現下面的事實:

當我們在 TopComponent 了設定了 Lookup(即使用 associateLookup 方法)後,必須要把 action map 加到 Lookup 之中(在之前的例子中,我們大多使用 InstanceContent 物件來當 Lookup 的 provider)。大家可以參考下面的網址得到答案:

http://openide.netbeans.org/proposals/actions/impl.html

Spider.Net

September 4, 2007 on 9:44 pm | In NetBeans | NetBeans Version: | No Comments

What do I do recently??? Spider.Net is the answer. I have opened an open source project, that is Spider.Net, recently. Spider.Net is a framework for web crawler. It provides many building blocks for web crawler construction. With these building blocks, you can build a web crawler easily. In Spider.Net, there are three main project: 1. Spider Framework, 2. Spider Runtime, 3. Runtime Environment. Spider Framework provides building blocks. Spider Runtime is driven by an XML configuration file. With XML configuration file, Spider Runtime can builds and runs a web crawler which is built dynamically. Runtime Environment is a kind of sample application which wraps Spider Runtime.
The url is: http://code.google.com/p/spiderframework/. Hope this project is useful to you.

啟用 SaveAction 及 SaveAllAction

June 22, 2007 on 4:30 pm | In TopComponent, NetBeans, Action, Node, Tips | NetBeans Version: 5.5.1 | No Comments

之前,筆者在開發 NetBeans RCP 的過程中,發生了一個非常怪異的問題。在 NetBeans Platform 的文件中指出,SaveAction 只要在 Lookup 中放入一個 Node 及一個 SaveCookie 就能夠啟用。但是,筆者不管怎麼試,都試不出來。最後,筆者也忘了是做了什麼事才讓它 enable ,可能是把某個 Netbeans 的 Module 加入之後吧。

最近,筆者又被 assign 了另一個專案,也是要用 NetBeans Platform 來設計。好死不死,筆者又遇到了一模一樣的問題(SaveAction 無法被 enable)。這次,筆者就決定把它給記錄下來。

這篇文章算是一篇記錄性質的文章,我們將討論一下,如何讓 SaveAction(呈現出來是在 File/Save 的選單中)被啟用。同時,我們也會討論一下,如何使用最少的程式來啟用 SaveAction 及 SaveAllAction。這些問題都是在 dev@openide.netbeans.org 討論串中常出現的文章。如果,大家曾經看過,或已經知道 work around ,就可以略過啦。

Continue reading 啟用 SaveAction 及 SaveAllAction…

詭異的系統標題(Application Title)

June 15, 2007 on 11:37 am | In NetBeans, Tips | NetBeans Version: 5.5.1 | 1 Comment

大家在開發許多 NetBeans RCP 之後一定會發現,每次建立一個 Module Suite 專案後,NetBeans 幫我們自動帶出的 Application Title 中,都有著一段奇怪的數字(例如: MyProgressBar 200704122300,見下圖)。這個問題其實也困擾著筆者很久,所以,筆者決定花時間去研究一下如何在設計階段就將系統的標頭更改成我希望的格式。所以,這篇文章將會和大家討論一下,筆者發現可以用來修改 Application Title 的方式。這篇文章將著重在,以修改設定檔的方式來完成這項工作。當然,在先前討論的 Login Dialog 中,我們曾經使用過 ModuleInstall ,讓 NetBeans RCP 能在 Window Opened 事件發生時顯示一個 Login Dialog ,同樣的方式也用來可以動態地修改標頭。

Continue reading 詭異的系統標題(Application Title)…

Getting Started 系列 - Progress API 補充

June 13, 2007 on 3:01 pm | In NetBeans, Getting Started, Tips | NetBeans Version: 5.5.1 | No Comments

這篇文章算是關於 Progress API 的小小註記。

幾天前,我寫了一篇關於 Progress API 的文章,當然,我也很高興地使用著 NetBeans 的 Progerss API 來建立我希望的介面。但是,在我進行程式設計的過程中,卻發生了一些些的小插曲:
Continue reading Getting Started 系列 - Progress API 補充…

Getting Started 系列 - Progress API

June 8, 2007 on 5:47 pm | In NetBeans, Getting Started | NetBeans Version: 5.5 | No Comments

Progress 是 NetBeans 中用來呈現目前執行狀態的一個 API ,大家可能會覺得,我們己經有了 JProgressBar ,幹嘛還要這種東西。其實, Progress API 提供了一些簡易的方法讓我們可以很容易地在 NetBeans 中呈現一個 Progress Bar 。
大家在開啟 NetBeans 的時候,可以發現 NetBeans 在右下角( Status Bar 的右方)中有一個顯示 Scanning Project Classpaths 的 Progress Bar,它代表著 NetBeans 正在執行 Scanning 專案的 Classpath 的進度。 Progress API 即可做到這項功能。我們將在這篇文章討論一下, Progress API 較簡單的使用方法,致於 Aggregate 的部份將留到之後的文章再做介紹。在這次的範例中,我們將建立一個 Thread 用來測試 Progress Bar ,所以我們讓它執行 100 次的迴圈,每次執行時,透過呼叫 Thread.sleep (300) 的方式,讓它暫停 300 ms ,直到執行完成。

Continue reading Getting Started 系列 - Progress API…

近況

June 8, 2007 on 4:32 pm | In NetBeans | NetBeans Version: | No Comments

前陣子,我被我們老闆(或叫老師吧)調去做另一個專案的事情,所以導致整個五月都沒有什麼文章進帳,真的很對不起各位。還好,目前那個專案已經告一段落了,我又被調回設計使用 NetBeans RCP 的專案。所以,最近,應該又能再寫些文章。

Getting Started 系列 - 讀取及儲存 Preference

April 30, 2007 on 10:19 am | In NetBeans, Getting Started | NetBeans Version: 5.5 | No Comments

一般的系統大多會使用自己設計的格式來儲存使用者的偏好設定,可是,要設計一套很完整的模型將不是一件容易的事。NetBeans 在這個地方有很不錯的表現,我們可以使用先前介紹的 layer.xml 機制來完成這項工作。這篇文章將討論如何使用 layer.xml 來儲存使用者的偏好設定,以及簡單介紹 FileObject 的應用,共分成三個部份:讀取設定值、透過程式寫入設定值、及透過程式讀取連結到外部檔案的設定。

Continue reading Getting Started 系列 - 讀取及儲存 Preference…

Getting Started 系列 - Library Wrapper Module 及 Class Loader

April 17, 2007 on 5:36 pm | In NetBeans, Getting Started | NetBeans Version: 5.5 | No Comments

筆者最近在一些討論區上發現,有人在問如何在 NetBeans RCP 中引用其它的 jar 檔。這才讓筆者發現,筆者忘了介紹 Library Wrapper Module 了。所以,這篇文章將會教大家,如何新增一個 Libraries Wrapper Module ,以及使用 Project Dependencies 後, NetBeans 的 Class Loader 的運作方式。

Continue reading Getting Started 系列 - Library Wrapper Module 及 Class Loader…

Next Page »


@All rights reserved by Hsun-Cheng Hu. 版權所有,轉載請註明出處。

Powered by WordPress with Pool theme design by Borja Fernandez.
Entries and comments feeds. Valid XHTML and CSS. ^Top^