1. 程式人生 > >關於java的swing介面開發總結

關於java的swing介面開發總結

學習了利用java進行的介面設計。

介面的設計無非就是呼叫java內部自帶的一些包,進行組合,以及引數的設定。

相關包涉及到的標頭檔案需要引用標頭檔案。

幾個基本元件是:JFrame(窗體)、JButton(按鈕)、Jtree(樹形結構)等。

從最基本的窗體構建開始,模仿QQ的登陸介面做一個初步的模仿,其中涉及到了窗體、標籤、圖片、文字框、複選框、按鈕等元件的建立。

通過lo.showUI();為窗體的顯示構造一個函式。

我們用到的是以下幾個元件

JFrame 窗體類 最頂級的容器(預設佈局為邊框佈局,不能自己互相新增)

JLabel 標籤類

JTextField 文字輸入框類(可以設定框內字元、輸入框長度)

JCheckBox 複選框類

JButton 按鈕類

我們用到兩種類,javax.swing和javax.awt

一般使用的是javax.swing

當涉及到設定大小和佈局方式的等元素元件時,使用javax.awt

下面是部分程式:

//建立窗體物件,400,500分別為寬和高,java.swing則類似於C語言中的呼叫標頭檔案,初步學習我決定把它在每一次使用都寫出來。在寫程式中可以寫出初始部分後同時按alt和?可以自動補全內容。通過右鍵選擇Open Declaration可以查詢到這個方法所在的包。

javax.swing.JFrame jf = new javax.swing.JFrame();

jf.setSize(400, 500);

jf.setTitle("登入介面");

//設定退出程序的方法,開啟程序管理器發現,只有設定了該選項後才能正常退出,否則會繼續在後臺執行。

jf.setDefaultCloseOperation(3);

//設定居中顯示,使得方框位於中央。

jf.setLocationRelativeTo(null);

//流式佈局管理器(元素類),流式佈局的優點是可以使得元件依次排列,優先擺在中央,一行擺滿會自動放到下一行。缺點是其不能把文字或者標籤等放到像右下角這樣的位置,希望之後能繼續學習別的佈局方式,使得佈局更加美觀。

java.awt.FlowLayout flow = new java.awt.FlowLayout();

jf.setLayout(flow);

//圖片,圖片的路徑需要"\\"之前用“\”便無法引用

javax.swing.ImageIcon icon = new javax.swing.ImageIcon("F:\\圖片\\1.jpg");

//標籤,利用標籤來控制圖片的大小和位置

javax.swing.JLabel jla = new javax.swing.JLabel(icon);

jf.add(jla);

//文字框,其中用到了Dimenision這個語句,通過追本溯源我發現這個類的優先順序很高,也發現最高的父類是project,他們滿足繼承關係。此語句中物件是jft,dm是設定的物件,不能重複使用

javax.swing.JTextField jtf = new javax.swing.JTextField();

java.awt.Dimension dm = new java.awt.Dimension(380,30);

//(除了JFrame)其它所有元件設定大小都是該方法

jtf.setPreferredSize(dm);

jf.add(jtf);

//複選框

javax.swing.JCheckBox jcb = new javax.swing.JCheckBox("記住密碼");

jf.add(jcb);

//按鈕

javax.swing.JButton jbu = new javax.swing.JButton("登入");

jf.add(jbu); //給窗體新增按鈕物件

通過調整一些大小引數,一個簡單的窗體就這樣建立起來了,之後還需要學習更多元件和佈局的方法來完善這個介面。通過學習去搭建這個窗體,我接觸到了java內豐富的包,並學會去使用它們,也看到了java的強大的應用功能。