国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設(shè)計 > 正文

Eclipse Forms設(shè)計漂亮UI之布局

2019-11-18 15:46:47
字體:
供稿:網(wǎng)友
  增加一些內(nèi)容

  現(xiàn)在我們已經(jīng)有一個view能夠成功運行了.我們可以往里面增加一些內(nèi)容.Eclipse forms有一個body,我們可以這樣創(chuàng)建內(nèi)容.
public void createPartControl(Composite parent) {   toolkit = new FormToolkit(parent.getDisplay());   form = toolkit.createForm(parent);   form.setText("Hello, Eclipse Forms");   GridLayout layout = new GridLayout();   form.getBody().setLayout(layout);   Hyperlink link = toolkit.createHyperlink(form.getBody(),      "Click here.", SWT.WRAP);   link.addHyperlinkListener(new HyperlinkAdapter() {    public void linkActivated(HyperlinkEvent e) {     System.out.  form的body是標題下面的可用空間,因為這個空間是一個SWT Composite,它能做為其它組件的parent。在上面的代碼里,我們?yōu)閎ody設(shè)置了layout,然后創(chuàng)建了一個超鏈接。超鏈接是由Eclipse Forms提供的為數(shù)不多的組件之一,我們可以為超鏈接增加監(jiān)聽器,這樣能夠在用戶點擊它時做出反應(yīng)。

  升級后的視圖應(yīng)該看起來象這樣:

Eclipse Forms設(shè)計漂亮UI之布局(圖一)

圖3:一個有超鏈接的簡單form.

  超鏈接組(Hyperlink Groups)

  Form tookit有一個"超鏈接組"對象.每個創(chuàng)建出的超鏈接都加入這個組對象中.超鏈接為多個角色服務(wù).它們定義了這個組中所有超鏈接在正常、hover、激活不同狀態(tài)下的顏色.它們根據(jù)小組中鏈接不同的狀態(tài)來改變顏色.它們根據(jù)小組中鏈接不同的狀態(tài)來改變下劃線風格.

  當你要改變超鏈接組對象的默認設(shè)置時,可以通過toolkit的getHyperlinkGroup()方法來獲得超鏈接組對象.

  創(chuàng)建普通組件

  Eclipse Forms的一個設(shè)計目標就是讓能夠在編輯器/視圖中創(chuàng)建普通SWT組件.因為form的body是一個普通composite,你能夠在它里面使用任何layout和組件.但是,記住"原生的"SWT組件有一個組件背景.我們現(xiàn)在通過它們的構(gòu)造方法創(chuàng)建一些組件.
  layout.numColumns = 2;   GridData gd = new GridData();   gd.horizontalSpan = 2;   link.setLayoutData(gd);   Label label = new Label(form.getBody(), SWT.NULL);   label.setText("Text field label:");   Text text = new Text(form.getBody(), SWT.BORDER);   text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));   Button button = new Button(form.getBody(), SWT.CHECK);   button.setText("An example of a checkbox in a form");   gd = new GridData();   gd.horizontalSpan = 2;   button.setLayoutData(gd);
  現(xiàn)在我們使用了兩列,并且創(chuàng)建了一個標簽(label),一個文本框(text field)和一個復(fù)選框(checkbox).結(jié)果如下:

Eclipse Forms設(shè)計漂亮UI之布局(圖二)
圖4:一個擁有直接用它們的構(gòu)造器創(chuàng)建出的SWT組件的form

   這張圖片怎么回事?我們創(chuàng)建的組件的背景直接和系統(tǒng)窗口背景相匹配,而不是和form的背景匹配.另外,文本框看起來還好是因為這張截圖是在Windows xp下截的.在其它操作系統(tǒng)上,它會看起來是有一個3D邊框的空白條.為了解決這個問題,我們會用toolkit的工廠方法來創(chuàng)建這些組件:
  Label label = toolkit.createLabel(form.getBody(), "Text field label:"); 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 庄浪县| 武夷山市| 晋中市| 鹿泉市| 比如县| 喜德县| 灌南县| 云龙县| 简阳市| 大化| 广水市| 子长县| 台中市| 当阳市| 东宁县| 邹城市| 沧源| 林甸县| 博湖县| 科技| 延安市| 景东| 鞍山市| 灌阳县| 濮阳县| 东乌珠穆沁旗| 叶城县| 仙游县| 凌源市| 曲靖市| 六枝特区| 达日县| 荥阳市| 梓潼县| 马边| 长治县| 调兵山市| 炎陵县| 太湖县| 永春县| 金寨县|