<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    莊周夢蝶

    生活、程序、未來
       :: 首頁 ::  ::  :: 聚合  :: 管理

    體驗了一把JavaFx

    Posted on 2007-05-18 11:05 dennis 閱讀(22456) 評論(14)  編輯  收藏 所屬分類: java
        JavaOne放出來的新東西,出來也有段時間了,看了論壇和blog上的討論,叫好、不看好的各占一半。今天就去https://openjfx.dev.java.net/ 下載了netbean插件,按照getting startted做了一些例子。總體來說,JavaFx仍然是在awt/swing的基礎上的包裝,只不過用一層薄薄的性感語法包裝了一把,而且這語法與javascript等腳本語言基本一致,特別是聲明性的編程語法與json非常相似。據sun聲稱要退出一個消費者版本的jre,大概5M-9M大小,消息參見《桌面java的缺陷:面向消費者的jre》,這個恐怕也是給JavaFx專門定制的吧。個人觀點:沒有什么令人激動的新鮮玩意,特別是布局方面仍然是麻煩的layout機制,對多媒體的支持還是比不上flash,優點在于與java服務端通信方面(因為都是java平臺)可能比較有優勢,另外就是消費者版本jre的推出是個好消息,jre實在太大了。

        說了這么多,看看Hello World怎么寫的,實在與json太相似了:
    import javafx.ui.*;
    Frame {
         title: 
    "Hello World JavaFX"
         width: 
    200
         height: 
    200
         content: Label {
          text: 
    "Hello World"
         }
         visible: 
    true
    }

        這是聲明方式來創建一個Frame,Frame里面放個Label,Label上一句Hello World。也可以采用編程方式:
            var win = new Frame();
            win.title 
    = "Hello World JavaFX";
            win.width 
    = 200;
            
    var label = new Label();
            label.text 
    = "Hello World";
            win.content 
    = label;
            win.visible 
    = true;

    這語法與javascript有什么不同呢?
        再來看看事件處理,仍然遵循MVC模式,比如我們希望輸入框的文字修改能同時修改窗體的title,首先定義一個Model:
           class HelloWorldModel {
                attribute saying: String;
            }

            var model 
    = HelloWorldModel {
                saying: 
    "Hello World"
            };

        把Model綁定到View上:
       
            var win = Frame {
                title: bind 
    "{model.saying} JavaFX"
                width: 
    200
                content: TextField {
                    value: bind model.saying
                }
                visible: 
    true
            };

    TextFiled的value與model的saying操作進行了綁定,而Frame的title也綁定了model的saying方法,因此輸入框的文字改變的話,也會反映到title上咯。"{model.saying} JavaFX"倒是類似ruby對字符串的處理方法了。這些例子代碼完全來自 Getting Started With JavaFx script language,更多精彩內容請自己解讀。題外話:netbean蠻好用的啊,在我的1G內存機器上跑的挺歡。


    評論

    # re: 體驗了一把JavaFx  回復  更多評論   

    2007-05-18 13:18 by 壞男孩
    我的機器只有768M

    # re: 體驗了一把JavaFx[未登錄]  回復  更多評論   

    2007-05-18 13:54 by Leo
    無論是Swing還是javaFX,都需要更好的IDE支持

    JavaFX是一種腳本語言,用JavaFX寫出來的復雜的UI,會不會很難管理和維護

    # re: 體驗了一把JavaFx[未登錄]  回復  更多評論   

    2007-05-18 13:57 by Leo
    http://www.sun-lei.cn/2007/05/17/try-javafx-using-netbeans60m9/

    # re: 體驗了一把JavaFx  回復  更多評論   

    2007-05-18 14:27 by dennis
    @Leo
    JavaFx采用這樣的聲明性的類似于xml、json的描述語言,就是為了更好的支持IDE,可視化開發肯定是被充分考慮了。

    # re: 體驗了一把JavaFx  回復  更多評論   

    2007-05-18 14:28 by dennis
    @Leo
    我用的是netbean5.5,jdk5,感覺還是很順暢的,netbean6正式版似乎還沒release吧

    # re: 體驗了一把JavaFx  回復  更多評論   

    2007-05-18 15:58 by 阿南
    消費者版本jre的推出是個好消息,jre實在太大了。
    好,找個是最好的~這樣RCP打成的包就能更小了~

    # re: 體驗了一把JavaFx  回復  更多評論   

    2007-05-19 11:38 by 山風小子
    粗略看了下,Groovy的SwingBuilder就可完成JavaFX所作的事 :)

    # re: 體驗了一把JavaFx  回復  更多評論   

    2007-08-04 09:38 by Matthew Chen
    netbeans挺好的,可惜測試版bug多多,拿來開發有點怕怕,我也在netbeans上用javafx了,m10里面又bug(新出的可視化預覽的bug),改用m9,感覺還行,支持binding和tragger,不過語法似乎還在變動,用早期的代碼還報錯了,可以去看它的源代碼,確實是語法suger,而且運行起來很慢,因為是純粹的解釋然后構件類和對象運行,發布里是源代碼形式的,不會是動態語言吧。

    # re: 體驗了一把JavaFx  回復  更多評論   

    2008-08-04 17:03 by Bin
    我怎么感覺像是在盜版ext...

    # re: 體驗了一把JavaFx  回復  更多評論   

    2008-08-15 10:35 by hello
    ext還是盜版java swing呢

    # re: 體驗了一把JavaFx  回復  更多評論   

    2009-01-21 21:36 by kacakong
    國內第一個JavaFX專業論壇 http://www.thejavafx.com

    # re: 體驗了一把JavaFx[未登錄]  回復  更多評論   

    2009-01-26 05:38 by duduli
    早前就聽過Javafx了,只是最近才開始接觸。
    很簡單的入門。好

    # re: 體驗了一把JavaFx  回復  更多評論   

    2009-07-20 07:43 by 開始
    JavaFx的發展正步入正常軌道,Java Store將是JavaFx的新起點。

    # re: 體驗了一把JavaFx  回復  更多評論   

    2009-07-21 11:48 by idea
    越來越喜歡JavaFx,Java程序員也終于有了RIA利器了。
    主站蜘蛛池模板: 日韩电影免费观看| 福利免费在线观看| 久久久久久久免费视频| 91亚洲一区二区在线观看不卡| aa级女人大片喷水视频免费| 四只虎免费永久观看| 日韩亚洲人成在线综合| 国产乱子伦片免费观看中字| 亚洲AV无码一区二区三区电影 | 3d动漫精品啪啪一区二区免费 | 亚洲最大在线视频| 19禁啪啪无遮挡免费网站| 亚洲网站在线观看| 91成人免费在线视频| 亚洲人成77777在线观看网| 日韩高清免费观看| 男女男精品网站免费观看| 亚洲自偷自偷在线制服| 99re视频精品全部免费| 亚洲va在线va天堂成人| 免费在线观看理论片| 国产成人AV免费观看| 亚洲国产情侣一区二区三区| 成人五级毛片免费播放| 人人爽人人爽人人片av免费| 亚洲AV日韩精品久久久久久| 最近高清中文字幕无吗免费看| 亚洲爆乳无码专区www| 国产亚洲精品a在线观看 | 国产成人yy免费视频| 亚洲欧美中文日韩视频| 亚洲精品99久久久久中文字幕| 好湿好大好紧好爽免费视频 | 蜜臀91精品国产免费观看| 女人裸身j部免费视频无遮挡| 国产精品国产亚洲精品看不卡| 国产大片线上免费观看 | 亚洲爆乳成av人在线视菜奈实 | 亚洲精品不卡视频| 国产成人在线观看免费网站 | 亚洲免费在线播放|