鍵盤上的舞者

          像寫情書一樣Coding...
          隨筆 - 20, 文章 - 0, 評論 - 15, 引用 - 0
          數據加載中……

          JavaFX實現魚眼菜單 v0.1

          FisheyeMenu
          點擊圖片可運行程序

          posted @ 2009-12-06 02:27 陳維 閱讀(1839) | 評論 (3)編輯 收藏

          Inkscape提供將繪制保存為JavaFX的支持

          Inkscape是一個基于標準的SVG文件格式的開源矢量圖編輯器,在最新的0.47版本里添加了將繪制保存為JavaFX的支持。
          它將所有的繪制保存在一個繼承自CustomNode的JavaFX源文件里,目前只支持保存JavaFX源文件(.fx),不支持FXZ,不支持動畫。(可能以后也不會支持動畫,畢竟不是專注JavaFX的設計工具

          posted @ 2009-12-03 19:39 陳維 閱讀(1062) | 評論 (0)編輯 收藏

          使用JavaFX時間軸(Timeline)編寫的等待動畫



          (點擊圖片運行程序)

          項目源代碼下載:
          http://www.aygfsteel.com/Files/chenweionline/WaitingPaneFX.rar

          posted @ 2009-10-19 21:39 陳維 閱讀(3187) | 評論 (1)編輯 收藏

          JavaFX中實例化Java類對象

          如果Java類對象擁有不帶參數的構造函數,那么可以在JavaFX代碼里直接實例化:
          var var1 = ArrayList{};

          如果目標Java類只有帶參數的構造函數就有些麻煩,需要分2步進行,首先新建一個Java工具類JavaUtils.java,在這個類里將你目標類實例化完成后通過賦值語句將其賦值給JavaFX變量:

          1、編寫JavaUtils.java
          import java.net.MalformedURLException;  
          import java.net.URL;  
          /** 
           * 
           * 
          @author Leon Chen 
           
          */  
          public class JavaUtils {  
              
          public static URL getURL(String spec) throws MalformedURLException{  
                  
          return new URL(spec);  
              }  
          }

          2、在JavaFX代碼里使用JavaUtils生成URL類實例
          var url = JavaUtils.getURL(“http://www.jqueen.org”);

          目前JavaFX版本為1.2,在Java和JavaFX代碼的相互調用上還有很多不方便的地方,希望以后的版本會有改進。

          posted @ 2009-10-15 22:16 陳維 閱讀(1384) | 評論 (1)編輯 收藏

          Visual Library 2.0 - Examples

          Visual Library是NetBeans中廣泛使用的可視化函數庫,用于展現復雜的上下文關系,如建模或流程繪圖等工作。

          Visual Library源自于NetBeans的社區項目,隨著類庫逐步發展成熟并被開發者認可,在2007年正式成為NetBeans Platform. 6.0的一部分。目前的NetBeans IDE中,BPEL業務流程設計器,Mobile開發以及JavaEE開發的設計工具都在使用Visual Library來實現可視化編輯效果。

          Visual Library 2.0版本在使用時的編程風格同Swing類似,需要創建Scene場景包含,并使用Widgets生成所需的可視化元素,之后通過Scene場景的 createView操作來創建Swing的JComponent組件,以將可視化場景集成在Swing界面中呈現。

          關于Visual Library的使用,官方站點已經給出非常好的示例代碼,以展示Visual Library提供的幾十種不同的功能和用法,包含Action的使用,可視化組件的生成與連接等。

          示例代碼下載頁面:

          http://graph.netbeans.org/examples.html

          使用Visual Library開發的幾個案例截圖:

          posted @ 2009-09-14 20:58 陳維 閱讀(177) | 評論 (0)編輯 收藏

          使用文件模板和向導創建一個類型文件

               摘要: 通過工具創建類型文件時通常會使用到各式各樣的模板,例如IDE在創建java文件時會自動在文件頭添加作者和創建日期的注釋、XML文件會自動添加根元素的標簽等。在NetBeans里通過使用文件模板可以很方便的按照既定的模式創建你的類型文件。 我在《創建新的文件類型 》里介紹了怎樣創建一個自定義的文件類型,創建后的文件類型里就包含了一個名為MapTemplate.xmap的空文件模板。現在我們將...  閱讀全文

          posted @ 2009-09-14 20:45 陳維 閱讀(583) | 評論 (0)編輯 收藏

          創建新的文件類型

          我們在開發過程中經常會根據數據組織形式的不同創造新數據格式,例如我為開發2D游戲地圖所創造的xmap格式。NetNeans很方便的提供了對新數據格式的支持,我們現在就可以動手創建自己的文件格式。

          我們首先新建一個名為“Map Core”的模塊項目,然后在這個模塊里創建一個新的文件類型。

          創建文件類型的過程如下:

          1、點擊菜單欄的新建文件選項,在彈出的向導對話框的類別列表里選擇“模塊開發”,在文件類型列表里選擇“文件類型”,然后點擊“下一步”按鈕


          2、在文件識別面板,MIME類型輸入框里輸入我們自定義類型“text/x-map”,然后在文件擴展名輸入框里輸入文件擴展名“xmap”。文件擴展 名可以輸入多個,用空格或者逗號分隔。如此可以使得這個新文件類型支持多種后綴的文件,例如jpg,jpeg后綴皆表示JPEG圖像格式。輸入完成后進行 下一步操作。



          3、最后在輸入類名前綴、圖標和在磁盤上生成文件的位置,點擊“完成”后NetBeans會根據輸入自動生成和配置相關的幾個文件。



          我們已經成功創建了自己的MIME文件類型“text/x-map”,檢查一下項目文件夾,NetBeans為我們自動創建了幾個文件:

          Icon_Map.gif 自定義xmap文件的默認圖標。

          MapDataObject.java 當系統發現xmap文件時會創造一個MapDataObject對象用來表示文件的內容。

          MapResolver.xml 作為MIME類型解析器,它描述了“text/x-map”類型的文件后綴用于生成DataObject對象。

          MapTemplate.xmap 這是一個xmap文件模板,我們可以在其中添加標準的內容后使用這個模板創建新的地圖文件。

          layer.xml 添加了內容用于注冊MIME類型解析器和文件模板以及一系列標準操作,例如復制、粘貼等。



          最后,我們將項目編譯后在目標平臺中重新裝入,來檢驗新的文件類型。現在可以看到xmap類型的文件在安裝了MapCore模塊的目標平臺上顯示時和其他文件已經有所區別,使用了我們自己創建的圖標,說明xmap類型文件已經被識別。

           

          posted @ 2009-09-14 20:23 陳維 閱讀(906) | 評論 (0)編輯 收藏

          創建NetBeans模塊項目

          學習NetBeans模塊開發首先需要做的就是創建一個NetBenas的模塊項目,使用NetNeans IDE提供的新建項目向導只需要經過4個步驟就可以新建一個模塊項目。

          1、首先IDE菜單中的新建項目創建一個新項目,在向導對話框中的項目類別選擇“NetBeans 模塊”,項目選擇“模塊”。



          2、下一步填寫項目名稱和項目所在的磁盤位置。我將項目命名為“MapCore”。



          3、接下來填寫代碼名稱基和模塊顯示名稱。項目名稱基的作用類似于Java類的包名,用來標識一個NB模塊。模塊顯示名稱顧名思義模塊用于顯示的名字。


          4、點擊“完成”按鈕結束MapCore模塊的創建,創建后的項目文件結構如下:


          posted @ 2009-09-14 20:19 陳維 閱讀(299) | 評論 (0)編輯 收藏

          將你的文件類型集合進XML編輯器(第二部分)

          我發現了昨天的錯誤。不用將 MultiDataObject 替換成 XMLDataObject,你只需要簡單地確認 MIME 類型是以"+xml"結尾。例如,類似 text/x-foo+xml。一旦你這樣做了,你的文檔就會在 XML 編輯器里 打開。換句話說,你擁有免費的語法著色,簡單的確保 MIME 類型正確。根據昨天 Blog 里 描述 的4個步驟 增加 Cookies 可以為你提供 XML 的檢查、驗證和根據 XSLT 改變功能。諸如此類,事實上 盡管那個文件類型不是以".xml"結尾。

          最后,添加一個導航器,以便我們能夠獲取我們的 XML 文件提綱和便于我們在導航器里節點的跳躍關聯到 XML 編輯器。

          在這里教你怎樣添加 XML 導航器:

          1、必須確保你的 MIME 類型處于 text/x-foo+xml 模式,否則 XML 導航器將不會工作。當我們點擊一個節點,一個行的文檔將會打開,并且新的文檔不含有語法著色,換句話說,你的文檔內容將打開在一般的文本編輯器里。從3個地方可以看出你的 MIME 類型是否正確,MIME 類型的 resolver、Layer 文件和 DataLoader。(譯者注:NB6.5 上驗證需要檢查 XxxResolver.xml 和 layer.xml 文件)

          2、在重要文件節點里,展開<XML 層>和其中的<上下文中的此層>。找到導航文件夾,在導航文件夾里創建一個新的文件夾。這個文件夾的名字必須和你的 MIME 類型相同。然后復制XML文件夾下的內容到你的文件夾里。祝賀你,你已經制作了XML導航器用于激活你的 MIME 類型。

          3、安裝模塊。如果你安裝在開發 IDE 上,你就必須重新啟動 IDE 使 XML 導航器注冊生效。


          現在,每當文檔得到焦點,XML導航器就會顯示文檔的提綱。另外,你可以使用 XML 導航器導航到文檔的任何地方,就像顯示的那樣:

          navigator-for-own-file-type-xml.png



          原文地址:http://blogs.sun.com/geertjan/entry/integrating_the_xml_editor_for


          posted @ 2009-09-14 20:03 陳維 閱讀(124) | 評論 (0)編輯 收藏

          將你的文件類型集合進XML編輯器(第一部分)

          感謝 Vadiraj 的幫助,我現在知道了如何在XML編輯器里打開非XML文件。有時候你擁有一個內容是XML但是卻并非以“.xml”結尾的文件。如何讓IDE把它看作一 個XML文件呢?接下來你可以看到一個后綴為“.test”的文件在XML編輯器里被打開。你知道它被打開是因為語法著色和縮進,以及XML文件特有的附 加菜單項:

          own-extension-xml.png

          1、使用文件類型向導,會創建一些不同的類。只需要修改名為 XxxDataObject 的類。

          2、為模塊依賴關系添加 XML Tools API。

          3、在 DataObject 里,將繼承的類由 MultiDataObject 改為 XMLDataObject。

          4、在構造函數里補充驗證 XML、確認 XML 和使用 XSLT 改變 XML 樣式等附加功能所提供的 Cookies,像這樣:

          public TestDataObject(FileObject pf, TestDataLoader loader) throws DataObjectExistsException, IOException {
              
          super(pf, loader);
              CookieSet cookies 
          = getCookieSet();
              InputSource is 
          = DataObjectAdapters.inputSource(this);
              Source source 
          = DataObjectAdapters.source(this);
              cookies.add(
          new CheckXMLSupport(is));
              cookies.add(
          new ValidateXMLSupport(is));
              cookies.add(
          new TransformableSupport(source));
              cookies.add((Node.Cookie) DataEditorSupport.create(
          this, getPrimaryEntry(), cookies));
          }

          5、確認導入合適的聲明。

          import java.io.IOException;
          import javax.xml.transform.Source;
          import org.netbeans.spi.xml.cookies.CheckXMLSupport;
          import org.netbeans.spi.xml.cookies.DataObjectAdapters;
          import org.netbeans.spi.xml.cookies.TransformableSupport;
          import org.netbeans.spi.xml.cookies.ValidateXMLSupport;
          import org.openide.filesystems.FileObject;
          import org.openide.loaders.DataObjectExistsException;
          import org.openide.loaders.XMLDataObject;
          import org.openide.nodes.CookieSet;
          import org.openide.nodes.Node;
          import org.openide.text.DataEditorSupport;
          import org.xml.sax.InputSource;

          就這樣,你已經完成。你的文件現在可以被看作是一個 XML 文件,就像其他所有的 XML 文件一樣。



          原文地址:http://blogs.sun.com/geertjan/entry/integrating_the_xml_edior_for

          posted @ 2009-09-14 20:01 陳維 閱讀(187) | 評論 (0)編輯 收藏

          僅列出標題
          共2頁: 上一頁 1 2 
          主站蜘蛛池模板: 界首市| 西乌珠穆沁旗| 白山市| 宁津县| 沈阳市| 乐亭县| 张家港市| 长白| 吴旗县| 丽江市| 乡城县| 平湖市| 报价| 会东县| 汪清县| 吉木乃县| 孝昌县| 屯门区| 宜春市| 高清| 长岛县| 宝鸡市| 任丘市| 新余市| 金塔县| 迁安市| 安庆市| 从化市| 雅安市| 麻栗坡县| 普洱| 彩票| 五原县| 临西县| 尼勒克县| 黎城县| 巧家县| 虞城县| 五大连池市| 济宁市| 丽水市|