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

首頁 > 學院 > 開發設計 > 正文

SWT Layout開發時的注意項!

2019-11-18 15:26:00
字體:
來源:轉載
供稿:網友

  這兩天,帶領組員開發一個很有復雜度的界面,因為組員對SWT的Layout不是很熟悉,所以在界面先后出現了很多問題。有的時候是出現異常,因為Layout和LayoutData不匹配,有時候是顯示不出畫面??偸?,能產生的問題基本都碰到了。

目前的開發思路是先用SWT Designer畫界面,然后再手工重構整理,SWT Designer對于重構后的代碼便不能再識別了。所以僅僅依靠可視化工具是不行的,還要對SWT界面編碼非常熟悉。所以對于SWT Layout的把握就至關重要。

在制作自己的Composite時,一定要注重:

1 外面傳入的Composite 一定只用一次,就是在super(parent, style);的時候用,以后自己的所有控件的父親都是此Composite本身。不要在其他任何地方使用parent了。否則的話,很有可能干擾parent中的內容,造成自身和parent里面其他控件顯示錯誤。

2 每個Composite容器一定都要設置Layout,否則可能會顯示不出東西。一般來說都是設置GridLayout, 假如Composite本身就放置一個控件,比如說就放置一個Table,那么也可以用FillLayout。對于新手來說,推薦全部使用GridLayout,否則輕易出現Layout和LayoutData不匹配的情況,而且假如界面很復雜的話,問題是很難找到的。GridLayout完全可以替代其他Layout,實現各種需求(假如有控件重疊的情況,就不行了,就要使用FormLayout)。
下面是一段源碼,推薦按照這種方式構建界面。
public class TestComposite extends Composite ...{

PRivate Text text;
/** *//**
* Create the composite
* @param parent
* @param style
*/
public TestComposite(Composite parent, int style) ...{
super(parent, style);
setLayout(new GridLayout());
createArea(this);
}
private void createArea(Composite parent)...{
text = new Text(this, SWT.BORDER);
text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));

final Button button = new Button(this, SWT.NONE);
button.setText("button");
}

@Override
public void dispose() ...{
super.dispose();
}
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平罗县| 花莲县| 禹城市| 额尔古纳市| 嘉峪关市| 阿坝| 梅州市| 达孜县| 辽阳县| 会昌县| 璧山县| 凤山县| 昆明市| 台南市| 沅江市| 浠水县| 巩义市| 清河县| 喜德县| 肇东市| 循化| 班玛县| 玉环县| 阿拉尔市| 潮安县| 梧州市| 姚安县| 三亚市| 井冈山市| 宁安市| 奉新县| 藁城市| 射洪县| 苏州市| 三河市| 苍梧县| 博客| 鄂伦春自治旗| 上林县| 泗水县| 彰武县|