SWT/JFace開發入門指南(六)

來源:互聯網
上載者:User
使用Layout管理UI布局

我們在前面在一些例子中已經使用過Layout了。那麼Layout到底是做什麼的呢?

我們知道,在設計使用者介面時候,我們可以採用的一種辦法是手動的為每個組件設定合適當大小和位置。但是這樣的話,如果你所要顯示的組件比較多,編程量就會非常大,特別是考慮到表單大小變化時候各種組件的重繪。而實際上,我們可以利用一些通用的規則或者說演算法來安排這些組件的排列。比如所示的這個表單:


圖 10

很顯然,對於這些規則化的組件排列,應該有一些更簡單的辦法,而不是在代碼的各個部分寫xxx.setBounds之類。swt給我們提供了這樣的辦法,就是使用Layout。

你可以把一個Layout看成是安排組件位置和大小的一個規則,在應用了Layout的Composite(我們在這裡第一次提到了Composite,Composite就是一個能夠包含其他控制項的容器,比如Shell就是一個Composite,我們會在後面的部分詳細介紹Composite)中,所有的子控制項都會按照這個規則來進行排列。

在目前(寫這篇文章的時候eclipse最新版本是3.1M7),org.eclipse.swt.layout包中包含四種已經定義好的Layout,它們分別是:FillLayout,FormLayou,GridLayout和RowLayout。我在這裡不再一一作介紹,而是推薦大家看一下這篇文章《Understanding Layouts in SWT》。相信如果你有興趣看完它的話,就會對Layout有比較深的瞭解。

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.