java Swing
圖形用戶界面(GUI : Graphics User Interface)
窗口
JFrame常用方法
JFrame()創建一個無標題的窗口。
JFrame(String s)創建標題為s的窗口。
public voidsetBounds(int a,int b,int width,int height)設置窗口的初始位置是(a,b),即距屏幕左面a個像素,距屏幕上方b個像素,窗口的寬是width,高是height。
public void setSize(int width,int height)設置窗口的大小。
public void setLocation(int x,int y)設置窗口的位置,默認位置是(0,0)。
public void setVisible(boolean b)設置窗口是否可見,窗口默認是不可見的。
public voidsetResizable(boolean b)設置窗口是否可調整大小,默認可調整大小。
public voiddispose()撤銷當前窗口,並釋放當前窗口所使用的資源。
publicvoid setExtendedState(int state)設置窗口的擴展狀態,其中參數state取JFrame類中的下列類常量
MAXIMIZED_HORIZ (水平方向最大化) MAXIMIZED_VERT (垂直方向最大化) MAXIMIZED_BOTH (水平、垂直方向都最大化)。
publicvoid setDefaultCloseOperation(int operation)該方法用來設置單擊窗體右上角的關閉圖標后,程序會做出怎樣的處理,
其中的參數operation取JFrame類中的下列int型static常量,程序根據參數operation取值做出不同的處理:
DO_NOTHING_ON_CLOSE(什么也不做),HIDE_ON_CLOSE (隱藏當前窗口),DISPOSE_ON_CLOSE (隱藏當前窗口,並釋放窗體占有的其他資源),EXIT_ON_CLOSE (結束窗口所在的應用程序)。
菜單條,菜單,菜單項
/* *菜單條 */ setJMenuBar(JMenubar bar);
菜單: JComponent類的子類JMenu負責創建菜單,即JMenu的一個實例就是一個菜單 菜單項: JComponent類的子類JMenuItem負責創建菜單項,即JMenuItem的一個實例就是一個菜單項 嵌入子菜單: JMenu是JMenuItem的子類,因此菜單本身也是一個菜單項,把一個菜單看做菜單項添加到某個菜單中時,稱為菜單的子菜單 菜單上的圖標: Icon icon=new ImageIcon(“a.gif”);
常用組件及部件
常用組件
JTextField:文本框
JTextArea:文本區
JButton:按鈕
JLable:標簽
JCheckBox:復選框
JRadioButton:單選框
JComboBox:下拉列表
JPasswordFiled:密碼框
常用容器
/* JCpompoent是Container的子類,因此JComponent子類創建的組件也都是容器;中間容器必須添加到底層容器才能發揮作用 */
1.JPanel面板 2.JtabbedPane選項卡窗口 add(String text,Component c);//方法將組件c添加到JtabbedPane容器中 public JTabbedPane(int tabPlacement); 3.滾動窗口: JScrollPane scroll=new JScrollPane(new JTextArea()) 4. 拆分窗格JSplitPane JSplitPane(int a,Component b,Component c) JSplitPane(int a,boolean b,Component c,Component d) 5.JLayeredPane分層窗格 add(Jcomponent com,int layer);
常用布局
setLayout(布局對象);
FlowLayout布局:
FlowLayout();
botton.setPreferredSize(new Dimension(20,20))
BorderLayout布局
東西南北中布局
con.add(b,BorderLayout.CENTER);
CardLayout布局: CardLayout card=new CardLayout();
GridLayout布局 null布局 p.setLayout(null); BoxLayout布局:
處理事件
事件處理模式
事件源:
能夠產生事件的對象都可以稱為事件源,文本框,按鈕,下拉框。也就是說,事件源必須是一個對象。而且這個對象必須是java認為可以發生事件的對象
監聽器:
需要一個對象對事件源進行監視,以便發生的事件做出處理,事件源通過調用相應的方法,將某個對象注冊為自己的監聽器,例如文本框,這個方法
addActionListener(監聽器);
處理事件的接口:
監視器負責處理事件源發生的事件。監視器是一個對象。為了處理事件源的發生的事件,監視器這個對象會自動調用一個方法來處理,(對象只有調用方法才能產生行為)
ActionEvent事件
ActionEvent事件源:
文本框,按鈕,菜單欄,密碼框,和單選框按鈕都可以觸發ActionEvent事件,即都可以成為ActionEvent事件的事件源。