国产探花免费观看_亚洲丰满少妇自慰呻吟_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();
}
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 攀枝花市| 岳池县| 罗城| 达孜县| 雷波县| 甘南县| 屯昌县| 固始县| 延长县| 琼中| 六枝特区| 石棉县| 洞口县| 名山县| 兰坪| 固原市| 逊克县| 三江| 葵青区| 亳州市| 高安市| 沁源县| 兴海县| 友谊县| 嘉禾县| 民乐县| 黑山县| 尼勒克县| 咸阳市| 贺兰县| 盐城市| 平远县| 正安县| 扶余县| 柳河县| 满洲里市| 三明市| 鸡西市| 江川县| 崇仁县| 布拖县|