<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

    4、復雜控件

    (1)       ExpandableComposite

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

    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使得該控件具有樹型節點的展開、收縮功能;而TWISTIE使得控件具有三角箭頭風格

    l         EXPANDED使得初始展開顯示

    l         CLIENT_INDENT使得Client內容縮進對齊

    l         ExpandableComposite呈現為激活控件和標題,而可以展開、收縮的內容稱為Client

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

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

    l         下面是上例的運行結果:

    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         下面是上例的運行結果:

    r_Section.jpg

    posted on 2005-04-10 23:19 nelson_tu 閱讀(1795) 評論(0)  編輯  收藏 所屬分類: Eclipse開發
    主站蜘蛛池模板: 四虎免费久久影院| 国产精品无码免费视频二三区| 亚洲人成色7777在线观看不卡| 亚洲精品乱码久久久久久V | 亚洲综合精品成人| 亚洲第一成年免费网站| 亚洲天堂一区在线| AV片在线观看免费| 国产亚洲综合一区二区三区| 亚洲国产精品嫩草影院久久| 一区二区三区免费视频播放器| 国产亚洲AV夜间福利香蕉149| 国产日韩精品无码区免费专区国产| 亚洲午夜福利717| 91香蕉在线观看免费高清| 亚洲人成电影在线观看网| 最近中文字幕mv免费高清视频7 | 一级视频在线免费观看| 亚洲日韩小电影在线观看| 免费无码中文字幕A级毛片| 亚洲黄色免费网站| 日韩一品在线播放视频一品免费| 日韩免费码中文在线观看| 国产亚洲精品自在久久| 免费在线看v网址| 免费无码又爽又黄又刺激网站| 国产亚洲婷婷香蕉久久精品| 黄页网站在线观看免费高清| 午夜亚洲WWW湿好爽| 国产亚洲精品成人a v小说| 在线日本高清免费不卡| 亚洲性无码一区二区三区| 在线观看亚洲精品福利片| 猫咪免费人成网站在线观看| 日日摸日日碰夜夜爽亚洲| 久久久久久a亚洲欧洲aⅴ| 麻豆国产人免费人成免费视频| 中文字幕视频免费在线观看| 亚洲免费观看网站| 国产亚洲自拍一区| 国产精品免费观看久久|