/**
*
Title:swing概觀
*
Description: swing初步知識
*
Copyright: eclipse (c)
*
Company:unix
*/
一
swing的概觀
swing是目前java不可或缺的窗口工具組
在swing尚未推出之前
寫java窗口必須使用AWT(abstract window toolkit)包
AWT沒有彈性可言
具體表現在不能隨意改變組件外觀等
本課程主要講解swing
AWT免談
swing中只有JFrame
JDialog
JWindow與JApplet不是純java所寫成
其余組件和事件響應方法均為純java所寫
二
swing結構
swing原先是利用MVC(model
view
controller)的概念衍生而成
這個模式應用在smalltalk語言上
MVC概念如下
model:存儲組件數據的地方
如JChockBox中的model將存儲所有選項的值
並以boolean值來表示
JTable的model則存儲所有表格上的數據
view:顯示組件的外觀
controller:處理用戶組件的操作
並寫改變存儲在model中
MVC圖形表示
view
|
controller
|
model
MVC已經具有清楚的模塊結構
因此swing在設計上遵循這樣的概念
但作了一些改變
原先獨立的view和controller在swing中被合並在一起
稱為UI(UI
deldgate)界面
因為swing的發展小組認為這兩者關系緊密
分開設計會增加難度
M
UI結構圖
UI
delegate
|
model
不論swing的結構如何設計
swing中的model均可分成三個種類
第一種
存儲組件內部將被用來操作的數據
如tableModel
and so on
第二種
存儲控制組件操作模式的數據
如JList等
第三種
存儲組件本身性質的數據模式
如JSlider等
三
swing中常用的package
package comments
javax
swing 最常用的package
裡面包含和各種swing組件的類
javax
swing
border 包含與swing組件外框有關的類
lorchoser 針對與swing組件外框有關的類
javax
swing
event 處理由swing組件產生的事件
有別於AWT事件
javax
swing
filechooser 包含針對swing文件選擇對話框JFileChooser所設計的類
javax
swing
plaf 處理swingx組件外觀的相關類
javax
swing
plaf
basic 同
tal 同
javax
swing
plaf
multi 同
javax
swing
table 針對swing表格組件JTable所設計的類
javax
swing
text 包含與swing文字框有關的類
l 同
l
parser 同
javax
swing
text
rtf 同
javax
swing
tree 包含swing 樹狀無件JTree所設計的類
javax
swing
undo 包含與swing文字組件Redo或Undo的功能
思考
試說明swing的組件設計的理念以及優於AWT的原因?
試說明swing的結構概念
為什麼將swing的view與controller合在一起
這樣有什麼用 :)
****大家可以跟貼回答以及得問
From:http://tw.wingwit.com/Article/program/Java/hx/201311/27144.html