為了實現GUI應用程序的功能,為了與用戶交換,需要在容器上添加各種組件/控件。這需要根據具體的功能要求來決定用什么組件。例如,如果需要提示信息,可用標簽(Label/JLabel);如果需要輸入少量文本,可用文本框(TextField/JTextField);如果需要輸入較多文本,可用文本區域(TextArea/JTextArea);如果需要輸入密碼,可用密碼域(JPasswordField)等等。
③安排組件
與傳統的Windows環境下的GUI軟件開發工具不同,為了更好地實現跨平臺,Java程序中各組件的位置、大小一般不是以絕對量來衡量,而是以相對量來衡量。例如有時候,程序的組件的位置是按"東/East"、"西/West"、"南/South"、"北/North"、"中/Center"這種方位來標識的。因此,在組織界面時,除了要考慮所需的組件種類外,還需要考慮如何安排這些組件的位置與大小。這一般是通過設置布局管理器(Layout Manager)及其相關屬性來實現的。事實上上述按方位來安排組件就是采用了Java中多種布局管理器里的BorderLayout布局管理器。
④處理事件
為了完成一個GUI應用程序所應具備的功能,除了適當地安排各種組件產生美觀的界面外,還需要處理各種界面元素事件,以便真正實現與用戶的交換,完成程序的功能。在Java程序中這一般是通過實現適當的事件監聽者接口來完成的。比如如果需要響應按鈕事件,就需要實現ActionListener監聽者接口;如果需要響應窗口事件,就需要實現WindowListener監聽者接口。
三、開發實例
下面是一個在Linux下用Java開發GUI應用程序的實例。該程序的主要功能是提供一個用于輸入用戶名與密碼以登錄到某一系統的界面,如果用戶輸入相關信息后單擊"登錄"按鈕,系統將在窗口的下半部分顯示所輸入的用戶名與密碼信息,如果單擊"退出"按鈕,程序將停止運行。如下圖1所示:
本程序沒有提供很強的功能,目的只在于介紹在Linux上用Java編寫GUI應用程序的基本方法。以下是程序的源代碼,其中的注釋說明了GUI應用具體的創建步驟:
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/