快速业务通道

SWT和JFace,第4部分: 简介 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18
xception("image only items require a tool tip");    }    ToolItem ti = new ToolItem(bar, style);    if (image != null) {      ti.setImage(image);    }    else {      if (text != null) {        ti.setText(text);      }    }    if (tooltip != null) {      ti.setToolTipText(tooltip);    }    if (listener != null) {      ti.addSelectionListener(listener);    }    return ti; }

多数操作系统都提供了与系统状态关联的特殊形式的工具栏,称为 托盘 (Tray)。不能构造 Tray;必须使用 Display.getSystemTray() 访问 Tray。与 ToolBar 相似,托盘中包含 TrayItem。TrayItem 没有样式选项,通常以 PUSH ToolItem 的形式工作。

CoolBar 类似 ToolBar,区别在于用户可以重新安排栏中的 CoolItem,可以在 CoolItem 之间拖曳分隔条。对于栏中的 CoolItem 如何换行以及栏中项目显示的顺序,CoolBar 还允许更多控制。CoolBar 只支持 FLAT (或 NONE)样式。CoolItem 只支持 DROP_DOWN 样式。与 ToolItem 不同,CoolItem 有相关的控件负责实际实现项目的 GUI。如果没有这个控件,CoolItem 就没有功能,通常也没有可视的实现。这个控件应当有一个 ToolTip。

下面两个清单分别显示了创建 CoolBar 和 CoolItem 的代码。请注意只能创建水平 CoolBar。

清单 4. 创建 CoolBar 的方法

protected CoolBar createCoolBar(Composite parent, int style) {    return new CoolBar(parent, style); }

清单 5. 创建 CoolItem 的方法

protected CoolItem createCoolItem(CoolBar bar, int style, String text,                   Image image, SelectionListener listener) {    CoolItem ci = new CoolItem(bar, style);    if (text != null) {      ci.setText(text);    }    if (image != null) {      ci.setImage(image);    }    return ci; }

SWT和JFace,第4部分: 简介(4)

时间:2011-03-20 IBM Barry Feigenbaum

下面这个清单显示了如何用这个代码创建 CoolItem 和相关控件。在这个示例中,当选中 CoolItem 的控件时,会弹出一个菜单,如图 2 所示。请注意 CoolItem、按钮和菜单都用 CoolBar 作为双亲。还请注意 CoolItem 的文本没有显示,只显示了关联的控件。

清单 6. CoolItem 的创建示例

CoolBar cb = createCoolBar(..., SWT.FLAT);   : // other CoolItems CoolItem ci = createCoolItem(cb, SWT.FLAT, "Drop", null, null); Button b = createButton(cb, SWT.PUSH, "Press Me 1", null, new SelectionAdapter() {    public void widgetSelected(SelectionEvent se) {      menu.setVisible(true);    } }); ci.setControl(b);   // associate Button with CoolItem Menu m = new Menu(cb); createMenuItem(m, SWT.PUSH, "Item 1", null, ''1'', true, null); createMenuItem(m, SWT.PUSH, "Item 2", null, ''2'', true, null); createMenuItem(m, SWT.PUSH, "Item 2", null, ''3'', true, null);   : // other CoolItems

图 2. CoolItem 示例

SWT和JFace,第4部分: 简介 - 编程入门网

SashForm

通常需要给应用程序 GUI 的某些部分分配可变的屏幕空间。第 3 部分 介绍了如何用 TabFolder 实现此目标。而本文将介绍使用 SashForm 的替代方法。

SashForm 显示多个(通常是两个)控件时,在控件间可以有分隔 Sash(框格)。可移动此框格,在控件间分隔屏幕空间。请注意在多数情况下,SashFrom 中的控件是 Composite。要获得最佳使用性,Composite 应当有边框,以便让

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号