成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

全面比較AWT和Swing

開發(fā) 后端
本文介紹AWT和Swing的比較,以及介紹AWT和SWT實現(xiàn)原理不同:AWT控件相當于是一筆一畫繡出來的。

比較AWT和Swing

1.AWT和Swing組件體系
a)Swing:通過在父組件上動態(tài)調(diào)用add()和remove()方法,來對組件樹進行動態(tài)維護,因此,可以存在沒有父組件的子組件。
b)SWT:通過在構(gòu)造函數(shù)的參數(shù)中,指定父組件,因此,不可能存在沒有父組件的子組件。

2.AWT和Swing組件繪制
a)Swing:通過調(diào)用組件的paint()方法來進行組件的繪制,組件進一步對他的子組件調(diào)用paint(),從而完成整棵組件樹的繪制。通過子類化,重寫paint()方法,可以完全定制一個組件的繪制。
b)SWT:SWT組件只是本地平臺上實際組件的一個代理,實際組件采用win32編程方式進行繪制,繪制的過程不在JVM中完成。因此,子類化也不能對繪制進行完全定制。當SWT組件進行繪制時,他在完成了本地的繪制以后,會返回JVM,然后對所有已注冊的PaintListener發(fā)出通知,因此,通過注冊PaintListener可以對組件繪制進行一定程度上的修改。

3.AWT和Swing事件模型
a)Swing中的事件會跟據(jù)當前的焦點進行發(fā)送。父組件不能對事件進行過濾。Swing中的事件監(jiān)聽器都是有類型的,因此每個組件所能支持的事件類型是通過方法名來限定的。不能擴展。
b)SWT中的事件也是根據(jù)當前的焦點進行發(fā)送。父組件不能對事件進行過濾。SWT中支持有類型的監(jiān)聽器,也支持無類型的監(jiān)聽器,通過addListener(type,listener),我們可以為組件添加任何類型的監(jiān)聽器。

4.AWT和Swing包設計
a)Swing是一個純粹的組件庫,他沒有圖形的操作,他的繪制最終轉(zhuǎn)發(fā)給Java 2D來完成。
b)SWT包含了組件庫和圖形庫,他的結(jié)構(gòu)與AWT比較接近。

5. 其它
AWT和SWT實現(xiàn)原理不同:AWT控件相當于是一筆一畫繡出來的,參加 java.awt.Component.paint(Graphics g),性能差;而SWT調(diào)用了操作系統(tǒng)后臺原生庫,org.eclipse.swt.widgets.Control類型中就沒有類似的paint方法了,但是有一個接口org.eclipse.swt.graphics.Drawable。實現(xiàn)原理的不同帶來了性能和用戶視覺的差異。

SWING 是基于AWT提供的MVC不完全實現(xiàn),JFACE是基于SWT提供的MVC不完全實現(xiàn)。兩者的核心作用都是提供了viewer和模型封裝的概念,從設計實現(xiàn)層面看,SWING更加唯美一些,JFACE則更加側(cè)重于實用。SWING和 JFACE兩者都偏重于行為控制上下文,而對UI數(shù)據(jù)(例如,一個文本框控件中的內(nèi)容)的管理都沒有做太多的設計。JFACE中略有改進,提供了 setData的概念。JFACE是為了Eclipse而生的,雖然后來 RCP出來了,又做了其他的包裝宣傳,典型的體現(xiàn)就是提供了JFace Text Framework和其他一些用戶構(gòu)建Eclipse元素的UI支持,也提供了一些系統(tǒng)資源管理(ImageRegsitry、 ResourceManager等)等附加功能。

SWING框架與代碼很優(yōu)美,但效率低,特別是高級控件如各種選擇框超慢,與Windows本身不協(xié)調(diào),使用體驗差;而且再怎么使用LookAndFeel,還是不美觀,總是感覺畫的不清晰。

【編輯推薦】

  1. 淺析Swing線程包括內(nèi)容
  2. AWT或Swing混合環(huán)境中的事務處理
  3. Swing性能和Swing程序的學習
  4. 比較Swing和SWT的速度
  5. 淺談Swing構(gòu)造JList
責任編輯:佚名 來源: 機械工業(yè)出版社
相關(guān)推薦

2009-07-10 17:20:38

Swing構(gòu)件AWT構(gòu)件

2009-07-14 15:01:02

AWT和Swing

2009-07-17 11:13:46

AWT和SwingSwing組件

2009-07-14 16:30:41

Swing與SWT

2009-07-16 13:37:33

Swing和AWT

2009-07-10 17:03:17

AWT組件Swing組件

2009-07-17 09:36:14

SWT和Swing的區(qū)

2009-07-17 10:11:55

AWT和Swing

2009-07-16 13:50:28

AWT和Swing

2009-07-17 15:30:30

JFaceAWT和SWTSwing

2009-07-17 09:07:20

2009-07-17 10:01:14

Swing和AWT

2009-07-14 12:58:49

AWT和Swing

2009-07-10 15:41:27

Swing AWT

2009-07-14 15:12:36

SwingSWT和AWT

2009-07-10 11:07:18

Swing和SWT

2009-07-15 15:15:42

比較Swing和SWT

2009-06-26 14:37:10

EJB和Spring

2009-06-24 16:16:30

JSF和Tapestr

2009-07-10 13:36:32

Swing容器
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 婷婷色婷婷 | 羞羞视频网站在线观看 | 久久男女视频 | 亚洲欧美综合精品久久成人 | h片免费看| 男女羞羞视频在线观看 | 久久成人av电影 | 精品国产欧美在线 | 日韩欧美在线观看 | 久久久久久国产精品免费免费 | 国产精品国产成人国产三级 | 久久伊人操| 国产97视频在线观看 | 久久青 | 亚洲在线一区二区 | 久久99精品久久久久久 | www国产成人免费观看视频,深夜成人网 | 欧美日韩国产精品一区二区 | 碰碰视频| 亚洲精品一区二区在线观看 | 久草视频网站 | 亚洲欧美国产毛片在线 | 日韩中文字幕在线视频观看 | 国产精品久久久久久亚洲调教 | 久久久综合 | 日韩午夜场| 国产日韩欧美一区二区 | 成人福利网站 | 2018国产大陆天天弄 | 国产精品1区2区 | 99在线免费观看视频 | 一区日韩 | 日韩欧美在线观看视频网站 | 91网站视频在线观看 | 欧美激情在线一区二区三区 | 欧美日韩国产高清 | 久久一区精品 | 中文字幕在线一区 | 视频一区二区在线观看 | 日本精品久久 | 一区二区三区在线免费观看 |