Java內容梳理(21)API學習(9)GUI圖形介面
1、GUI介紹
GUI程式設計:使用者圖形介面,軟體介面程式設計
Java中的GUI程式設計技術:AWT;Swing(AWT的擴充套件);SWT;JavaFx
2、Swing程式設計
元件: 組成軟體介面的零件;包括容器,控制元件,主題
控制元件: 與使用者發生互動的功能性零件,比如按鈕:JButton
主題:UIManager.setLookAndFeel( UIManager.getSystemLookAndFeelClassName() );採用當前系統的顯示風格,這句程式碼最好是在
第一句執行
容器: 擺放控制元件的零件;包括視窗,面板,佈局管理器
視窗: JFrame,新建時,預設不可見,自帶一個面板容器,用於顯示視窗內容;
JFrame自帶的這個面板容器預設採用BorderLayout佈局
面板:JPanel:預設採用:流式佈局
佈局管理器: 負責管理控制容器內所有元件的位置,大小以及個數;setLayout( null ) 修改容器採用的佈局
1、邊界佈局(區域佈局):BorderLayout
將整個容器的空間劃分為:東,西,南,北,中,這5個區域
每個區域只允許擺放一個元件,並且該元件將佔滿整個區域的空間;
中部區域最牛B:
若其他區域沒有擺放元件,則其他區域的空間將被中部區域佔領;
若中部區域沒有放元件,其他區域不能佔用中部區域的空間;
若向採用了BorderLayout佈局的容器中新增元件時,沒有指定該元件擺放的位置時,預設放置在中部區域
各區域常量:
北區:BorderLayout.NORTH
南區:BorderLayout.SOUTH
西區:BorderLayout.WEST
東區:BorderLayout.EAST
中區:BorderLayout.CENTER
2、流式佈局:FlowLayout:從左到右,從上到下,依次擺放元件
3、絕對佈局:
不採用任何佈局管理器對元件進行管理
必須指定新增到絕對佈局中的元件的位置和大小,否是無法顯示,setBounds(x,y,w,h)
3、事件處理機制
事件源:發生某個情況(事件)的地方(元件)
事件:描述一種情況,比如:滑鼠點選,鍵盤按下某個鍵,.......
監聽器:用於監控事件的發生;不要在監聽器中的事件處理方法內編寫耗時操作,否則介面將卡死直至耗時操作完畢;因為在swing中對
UI控制和事件處理是同一個執行緒中進行
4、貪吃蛇
待續