top
Loading...
Java布局管理器在現實工程中的應用


內容簡介:Java的出現是編程藝術和計算環境改變的結果,是Intenet發展的產物同時也是推動Internet發展的動力。但是Java作為新的編程語言,有許多不與以往編程語言不同的地方。布局管理就是其中的一個,本文的目的在于介紹如何將布局管理應用于現實工程中,而不是作為學習布局管理的參考資料。

布局管理對于眾多編程人員來說是一個比較新的概念,因為以前使用的多種編程工具已經很好地解決了這個問題,根本就不用程序員自己考慮控件的布局問題,只需要簡單的拖拽就可。但是接觸到java之后,尤其是因為使用elipse等工具,就不得不認真地對待這個布局問題。而且我個人認為使用elipse這種工具開發也有它的長處,優點之一就是就是可以使開發者真正的在開發過程中思考每一個類的結構,可以使代碼更加的優秀,同時也使一個程序員更容易向一個程序設計人員轉變。

由于本文的目的在于介紹布局管理在現實工程中的應用,關于布局管理的基本內容,這里不再介紹,并把讀者定位于已經基本了解布局管理的使用方法的程序員,沒有掌握布局管理基礎知識的讀者可以參考sun提供的java api。

開始接觸布局管理的程序員可能會感覺布局管理比較難于對付,增加了開發人員對商業邏輯考慮之外的負擔,這個的確是事實,但是遠不如剛接觸不覺布局管理的人想象得那么難。因為從工程角度考慮的話,一個用戶界面的并非十分的復雜,當然我是指的一般的數據庫應用程序,界面極其復雜的工具類軟件。一般來說數據庫應用程序的主要應用在于對數據庫的維護,回想我們以前從事過的工程,用戶界面基本上由菜單,數據列表,數據編輯組件,一組用來提交用戶工作的按鈕組成。以下內容就以上述組件作為一個數據庫應用程序的用戶界面為基礎展開討論。

首先我們把這些窗體內容分組,然后把每一組組件放在一個容器中(這是我以往的開發過程中處理用戶界面的方法,個人認為可以簡化用戶界面的開發),這樣我們就把以上組件劃分為兩組(菜單不再布局考慮之內)即數據組件和按鈕,然后我們在把數據組件分成數據列表,數據編輯組件分成兩組,將以上個組分別放置在各自的容器中,使用程序表達出如下:

JFrame sampleFrame = new JFrame("Sample Frame for Manager Layout");

JPanel panelDataContent = new JPanel(); // 數據組件容器

JPanel panelDataList = new JPanel(); // 數據列表容器
JList listData = new JList();
/*
注釋1 這里應該是使用布局管理把listData放在panelDataList上
*/

JPanel panelDataEditor = new JPanel(); // 數據編輯組件容器
JTextField editData1 = new JTextField();
//...... // some other edit controls
/*
注釋2 這里應該是使用布局管理把數據編輯組件放在panelDataEditor上
*/

/*
注釋3 這里應該是使用布局管理器把panelDataList和panelDataEditor放在

panelDataContent上
*/

JPanel panelButton = new JPanel(); // 按鈕容器
JButton buttonModify = new JButton("Modify");
//...... //some other buttons
/*
注釋4 這里應該是使用布局管理器把按鈕放在panelButton上
*/



Container c = sampleFrame.getContentPane();
/*
注釋5 這里應該是使用布局管理器把panelButton和panelDataContent放在c上
*/

這樣的話,我們在開始考慮布局的時候就可以考慮把一個窗體分為兩部分。這樣我們就有兩種結構可以選擇,上下結構和左右結構。下面我們來先考慮上下結構。

作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗