1. 程式人生 > >用Swing開發GUI程序(基礎知識)

用Swing開發GUI程序(基礎知識)

java基礎

GUI(Graphics User Interface)圖形用戶界面,可以讓用戶看著界面操作,所以要比控制臺程序更加直觀,可以提供更加豐富的功能。

在Java中,GUI操作的支持API,一般保存在java.awt和javax.swing包中,但一般情況我們選擇javax.swing,因為Swing界面開發API的功能比AWT更加強大。


一、使用窗口


(一)用JFrame類開發窗口

一般情況下使用javax.swing.JFrame類來進行窗口顯示,JFrame常見的構造函數為:

public JFrame(String title)throws HeadlessException


傳入一個界面標題,實例化JFrame對象。

JFrame類裏面的主要窗口操作函數有:

1.設置標題: public void setTitle(String title)

2.設置在屏幕上的位置:public void setLocation(int x,int y)

其中x為窗口左上角在屏幕上的橫坐標,y為窗口左上角在屏幕上的縱坐標。屏幕最左上角為原點。

3.設置大小: public void setSize(int Width,int Height)

4.設置可見性:public void setVisible(boolean b),true為可見,false不可見

當單擊窗口上的關閉按鈕時,窗口消失但程序沒有結束運行,這時需要調用方法:

XXX.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);XXX為窗口名。


(二)用JDialog類開發窗口

用JDialog類創建的窗口是對話框。其最常見的構造函數是:

public JDialog(Frame owner,String title,boolean model)throws HeadlessException

其中owner表示顯示該對話框的父窗口,title為標題,model值表示該窗口是否為模態窗口,從窗口A打開窗口B,則A為B的父窗口,如果B沒有關閉時,A不能使用,則B是一個模態窗口。


(三)使用控件

控件又稱為組件(Component),是面板,按鈕,文本框等的統稱。控件一般都有相應的類來實現,如JButton類來實現按鈕控件。

要將控件加到窗口上,為了對控件更好的組織,通常將控件加到面板上,即JPanel,再將面板加到窗口上去,通俗的講JFrame相當於桌子,而JPanel為布,JButton,JLabel等相當於杯子,碗筷等,杯子,碗筷雖然可以直接放到桌子上但不是很規範,應該放到桌布上才對

由於界面有可能比較復雜,所以一般不將界面的生成過程寫在主函數裏面,而是寫一個類繼承JFrame,在其構造函數中初始化界面。

  1. 標簽:public JLabel(String text);

  2. 按鈕:public JButton(String text);

  3. 文本框:public JTextField(int columns),參數為文本框顯示的列數

  4. 多行文本框:public JTextArea(int rows,int columns),默認的文本框沒有滾動條,需要使用JScrollPane類來使用滾動條,將JTextArea對象傳入其構造函數,然後在界面上添加JScrollPane對象。

  5. 密碼框:public JPasswordField(int columns)

  6. 菜單:

    開發菜單有步驟:首先添加菜單欄,然後在菜單欄上用add()方法添加菜單,最後在菜單中添加菜單項,構造函數分別是:

    實例化菜單欄:public JMenuBar()

    實例化菜單: public JMenu(String s)

    實例化菜單項:public JMenuItem(String s)



(四)使用JOptionPane

用JOptionPane類通常用來顯示一些消息框,輸入框,確認框等。

  1. 顯示消息框:

    public static void showMessageDialog(Component parentComponent,Object message)throws HeadlessException,其中參數一為父組件,可以為空,參數二表示消息內容

  2. 顯示輸入框:

    public static String showInputDialog(Object message)throws HeadlessException

  3. 顯示確認框:

    public static int showConfirmDialog(Component parentComponent,Object message)throwsHeadlessException,參數同上


寫了這麽多,然鵝並沒有什麽作用,因為Java文檔上面什麽都有,在界面開發的過程中,我們不能記住每一個函數,多看文檔才是正道。



本文出自 “衛莨” 博客,轉載請與作者聯系!

用Swing開發GUI程序(基礎知識)