以下來自于JDK1.6
一、Swing學習我劃分為兩個方面:
一方面Swing的界面設計部分,包括相關組件類的繼承關系,組件的功能用途,布局管理;
1.首先繼承關系上自上而下為
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent(窗體中的各種組件工具類繼承自此類,與AWT組件結構大部分相同)
java.awt.Window
javax.swing.JWindow(窗口)
java.awt.Frame
javax.swing.JFrame(框架)
java.awt.Dialog
javax.swing.JDialog(對話框)
? ? Window下包含了三種頂層容器:頂層容器一共四種:JFrame(框架),JDialog(對話框),JWindow(窗口),和JApplet(JApplet與Java中Applet程序有關幾乎已棄用)。
頂層容器分為四層自上而下為glass pane(玻璃面板),content pane(內容面板)和meun bar(菜單欄),
layered pane(分層面板),root pane(根面板),其中簡單界面設計主要設計內容面板和菜單欄這一層次。
JComponent下包含了各種容器的組件以及
八種中間容器:JPanel(面板),JScrollPanel(滾動面板),JOptionPane,JSplitPane,JTabbedPane,JInternalFrame,JToolBar(直接繼承自Component)
JDesktopPane(直接繼承自JLayeredPane,間接繼承Component)
中間容器注解:中間容器的作用容納組件
兩種特殊容器:JLayeredPane(分層面板,容納內部框架),JRootPane(根框架),(有且僅有的兩個特殊容器繼承自Component)
? 2.組件的功能用途
JButton等此處暫不寫了,有興趣的可以查看API
3.常用布局管理器
絕對布局:首先用Container.setLayout(null)取消默認布局管理器
然后用Component的setBounds(int x,int y,int width,int height)方法設置每個組件大小及位置即可。
流布局管理器(FlowLayout)
邊界布局管理器(BorderLayout):在不指定窗體布局的情況下,默認Swing組件的布局模式為邊界布局管理器
網格布局管理器(GridLayout)
第二部分關于事件處理的,后續補充
?