<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Open Java Project

    Keep it simple, Stupid, Less is more

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      20 Posts :: 0 Stories :: 12 Comments :: 0 Trackbacks

    3、定制布局

    Eclipse Form提供了2個新的布局

    1TableWrapLayout

    l         問題:如果將上例中超鏈接的文本設置的足夠長

                  link.setText("This is an example of a form that is much longer and will need to wrap.");

    即使設置了SWT.WRAP,文本內容不會自動WRAP,這是因為體內容的布局是GridLayout

    l         Eclipse Form提供替代的布局TableWrapLayout:類似于GridLayout,但是具有象HTML表格一樣自動WRAP功能

    l         下面是解決超鏈接文本自動WRAP的例子:

           public void createPartControl(Composite parent) {
                  toolkit = new FormToolkit(parent.getDisplay());
                  form = toolkit.createScrolledForm(parent);
                  form.setText("Hello, Eclipse Forms");
     
                  Composite body = form.getBody();
                  TableWrapLayout layout = new TableWrapLayout();
                  body.setLayout(layout);
                  Hyperlink link = toolkit.createHyperlink(body, "Click here.", SWT.WRAP);
                  link.addHyperlinkListener(new HyperlinkAdapter() {
                    public void linkActivated(HyperlinkEvent e) {
                           System.out.println("Link activated!");
                    }
                  });
     
                  layout.numColumns = 2;
                  link.setText("This is an example of a form that is much longer and will need to wrap.");
                  TableWrapData td = new TableWrapData();
                  td.colspan = 2;
                  link.setLayoutData(td);
                  Label label = toolkit.createLabel(body, "Text field label:");
                  Text text = toolkit.createText(body, "");
                  td = new TableWrapData(TableWrapData.FILL_GRAB);
                  text.setLayoutData(td);
                  text.setData(FormToolkit.KEY_DRAW_BORDER, FormToolkit.TEXT_BORDER);
                  Button button = toolkit.createButton(body,
                           "An example of a checkbox in a form", SWT.CHECK);
                  td = new TableWrapData();
                  td.colspan = 2;
                  button.setLayoutData(td);
                  toolkit.paintBordersFor(body);
           }

    l         下面是程序變化的地方:

    n         TableWrapLayout替代GridLayout

    n         使用TableWrapData來提供布局數據信息

    n         設置的屬性使用colspanrowspan等來源于HTML表格單元的屬性

    l         要注意的是:需要自動WRAP的控件,需要設置成SWT.WRAP風格

    2)ColumnLayout

    l         ColumnLayoutEclipse Form提供的另一個定制布局

    l         ColumnLayout的布局方式是從上到下,從左到右

    l         在變化Form的寬度時,會自動調整控件列數以適應Form的寬度

    l         ColumnLayout的設置很簡單,通常只要設置列數的范圍(缺省是1-3

    l         在后面的相關部分會給出使用的例子

    posted on 2005-04-02 23:54 nelson_tu 閱讀(2180) 評論(0)  編輯  收藏 所屬分類: Eclipse開發
    主站蜘蛛池模板: 亚洲片国产一区一级在线观看 | 国产日本一线在线观看免费| 亚洲无人区视频大全| 午夜成年女人毛片免费观看| 日韩毛片一区视频免费| 亚洲国产综合专区在线电影| 国产成人高清精品免费软件| 免费国产成人18在线观看| 亚洲精品又粗又大又爽A片| 亚洲精品狼友在线播放| 毛片高清视频在线看免费观看| 亚欧国产一级在线免费| 亚洲av乱码一区二区三区香蕉 | 青青视频观看免费99| 黄人成a动漫片免费网站| 91在线亚洲精品专区| 波多野结衣中文一区二区免费| 污污网站18禁在线永久免费观看| 亚洲欧美国产国产综合一区| 亚洲国产精品自在在线观看| 内射无码专区久久亚洲| 台湾一级毛片永久免费| 国产免费网站看v片在线| 亚洲精品国产综合久久久久紧| 亚洲AV无码一区东京热久久| 国产免费人成视频在线观看| 免费成人福利视频| 中文字幕久无码免费久久| 久久精品国产亚洲av瑜伽| 亚洲理论片在线观看| 亚洲日韩精品射精日| 婷婷综合缴情亚洲狠狠尤物| 国产成在线观看免费视频| 一区二区三区四区免费视频 | 午夜国产羞羞视频免费网站| 2021精品国产品免费观看| 在线涩涩免费观看国产精品| 免费很黄无遮挡的视频毛片| 亚洲欧美日韩一区二区三区在线| 亚洲女人初试黑人巨高清| 亚洲AV第一页国产精品|