<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 首頁 新隨筆 聯(lián)系 聚合 管理
      20 Posts :: 0 Stories :: 12 Comments :: 0 Trackbacks

    4、復雜控件

    (1)       ExpandableComposite

    l         Web頁面中一個通用的主題是具有收縮一部分頁面內(nèi)容的能力

    l         Eclipse Form也提供了這樣一個控件:ExpandableComposite

    l         下面的代碼片斷是使用ExpandableComposite的一個例子:

                  ExpandableComposite ec = toolkit.createExpandableComposite(body,

                    ExpandableComposite.TREE_NODE

                           | ExpandableComposite.CLIENT_INDENT);

                  ec.setText("Expandable Composite title");

                  String ctext = "We will now create a somewhat long text so that "

                    + "we can use it as content for the expandable composite. "

                    + "Expandable composite is used to hide or show the text using the "

                    + "toggle control";

                  Label client = toolkit.createLabel(ec, ctext, SWT.WRAP);

                  ec.setClient(client);

                  td = new TableWrapData();

                  td.colspan = 2;

                  ec.setLayoutData(td);

                  ec.addExpansionListener(new ExpansionAdapter() {

                    public void expansionStateChanged(ExpansionEvent e) {

                           form.reflow(true);

                    }

                  });

    l         這個控件有很多風格,TREE_NODE使得該控件具有樹型節(jié)點的展開、收縮功能;而TWISTIE使得控件具有三角箭頭風格

    l         EXPANDED使得初始展開顯示

    l         CLIENT_INDENT使得Client內(nèi)容縮進對齊

    l         ExpandableComposite呈現(xiàn)為激活控件和標題,而可以展開、收縮的內(nèi)容稱為Client

    l         Client必須是可展開的composite(上例是Label控件)

    l         最后需要添加Expansion監(jiān)聽器在狀態(tài)變化時,reflow Form(即根據(jù)控件的新的大小重新定位和更新滾動條)

    l         下面是上例的運行結(jié)果:

    o_ExpandableComposite.jpg


    2)Section

    l         Eclipse Form中最常用的定制控件就是Section(在PDE中到處可見)

    l         Section擴展ExpandableComposite,但具有下面的新特性:

    n         在標題下面有一個分隔控件

    n         在分隔控件下面可以有一個描述文本

    l         下面的代碼片斷是使用Section的一個例子,代碼和ExpandableComposite沒有太大差別,這里是用了TWISTIE風格:

                  Section section = toolkit.createSection(body, Section.DESCRIPTION

                           | Section.TWISTIE | Section.EXPANDED);

                  td = new TableWrapData(TableWrapData.FILL);

                  td.colspan = 2;

                  section.setLayoutData(td);

                  section.addExpansionListener(new ExpansionAdapter() {

                    public void expansionStateChanged(ExpansionEvent e) {

                           form.reflow(true);

                    }

                  });

                  section.setText("Section title");

                  toolkit.createCompositeSeparator(section);

                  section

                           .setDescription("This is the description that goes below the title");

                  Composite sectionClient = toolkit.createComposite(section);

                  sectionClient.setLayout(new GridLayout());

                  button = toolkit.createButton(sectionClient, "Radio 1", SWT.RADIO);

                  button = toolkit.createButton(sectionClient, "Radio 2", SWT.RADIO);

                  section.setClient(sectionClient);

    l         下面是上例的運行結(jié)果:

    r_Section.jpg

    posted on 2005-04-10 23:19 nelson_tu 閱讀(1795) 評論(0)  編輯  收藏 所屬分類: Eclipse開發(fā)
    主站蜘蛛池模板: 一区二区三区在线免费| 国产亚洲视频在线观看| 一级毛片免费播放| 亚洲日韩aⅴ在线视频| 成人国产精品免费视频| 久久久青草青青国产亚洲免观| 亚洲午夜精品国产电影在线观看| 亚洲精品色午夜无码专区日韩| 亚洲天堂中文资源| 久久青草免费91线频观看不卡 | 亚洲一区二区三区久久| 久久99国产综合精品免费| 亚洲国产精品无码久久久不卡| 亚洲精品国产av成拍色拍| 日韩成人在线免费视频| 亚洲AV无码专区国产乱码电影| 亚洲一本之道高清乱码| 97碰公开在线观看免费视频| 亚洲国产视频一区| 成全视频免费高清| 国产成人综合亚洲| 亚洲女久久久噜噜噜熟女| 免费无码一区二区三区| 亚洲另类自拍丝袜第五页| 久久精品一区二区免费看| 亚洲图片校园春色| 在线观看视频免费国语| 日本免费精品一区二区三区| 亚洲国产精品嫩草影院在线观看| 美女视频黄频a免费观看| 亚洲精品无码永久在线观看你懂的| 亚洲日本久久一区二区va| 日韩精品视频免费观看| 精品无码国产污污污免费网站国产 | 亚洲国产日韩精品| 亚洲国产成人精品女人久久久 | 亚洲国产激情在线一区| 免费人成视频在线观看不卡| 国产美女视频免费观看的网站| 国产大片91精品免费看3| 一个人免费观看视频在线中文|