摘要:
第二节 问候JFace的世界 返回目录 HelloWorld程序又一次向世界问候了,不过这一次是用JFace。因为JFace添加了一些Java库(但是并没有本地库——记住它是建立在SWT之上的),你需要一个新的Ant文件(见清单13-1)去生成和运行这个程序。 清单13-1: build... 阅读全文
摘要:
第一节 概述 返回目录 毕加索在他的抽象艺术中,仅仅描绘他主题中的本质元素。商业建议或者其他书面文本通常带有内容的摘要或者总结。在这样的心境下,面向对象编程宣扬抽象性——消除无关因素,只保留必须的。例如,如果要开发一个给兽医用的管理软件,你会创建一个Dog类(继承自一个Pet类),包含和狗相关的内容。这个Dog类表示了对真实生活中狗的抽象,但它并不是一个精确的狗的模型... 阅读全文
摘要:
第五节 使用GridLayout 返回目录如果读者只打算学习一种layout,那就是GridLayout。GridLayout封装了读者想要学习的绝大多数能力,适用于从简单到复杂的应用。就像它的名字暗示的那样,GridLayout在网格中徘布控件。通过复合控件在GridLayout中嵌套使用GridLayout,读者可以构建复杂的layout。GridLayout有两个构造函数,列在表4-3中。 表4-3: GridLayout的构造函数 构造函数 说明 public GridLayout() Constructs a default GridLayout. public GridLayout 阅读全文
摘要:
第四节 使用RowLayout 返回目录 RowLayout与FillLayout很相似:它把所有的控件放在一行或一列中。但是,它不会把所有的控件都设为相同的大小。如果空间不够,它会把控件放到另一行或另一列中。 ... 阅读全文
摘要:
第三节 使用FillLayout 返回目录 FillLayout是布局类中最简单的,它把所有的控件放在一行或一列,并使它们有相同的大小。它有一个公有(public)的属性和类型,决定控件是放在一行还是放在一列。可以把类型传递给构造函数,也可以在构造函数后设置类型。FillLayout的构造函数请参见表4-1。 ... 阅读全文
摘要:
第二节 布局(layout) 返回目录 在composite中的控件(controls in a composite)与这个composite之间,布局为它们提供了松耦合层(decoupling layer)。布局一般使用平台无关的方式,而且通常在父窗体改变大小时保持相应大小(maintains relative sizing)。可以通过composite的setLayou... 阅读全文
摘要:
第一节 概述 (本节内容已遗失) 阅读全文
摘要:
第七节 本章小结 返回目录 基于SWT的程序通过Display对象与底层的视窗系统建立连接。窗口,控件和事件都是构建于这个至关紧要的对象之上并通过它传递。在程序中创建的窗口都是Shell。本章构建了必须的“Hello, World”SWT程序并讲解了SWT背后的设计。现在我们知道如何创建控件,如何清除自己的控件,以及不要去碰那些不属于我们的东西(控件)。 下一章,我们将学习如何把窗... 阅读全文
摘要:
第六节 SWT类的常量与函数 返回目录 SWT类有一堆类级别(class-level)的常量和方法用来简化SWT编程。 没有什么事情阻止您创建一个SWT对象,因为创建一个不会带来任何坏处。SWT类继承于java.lang.Object,它没有定义构造函数,所以默认的构造函数会被调用。然而,一个SWT对象除了继承于java.lang.Object的状态,没有任何状态(state),本... 阅读全文
摘要:
第五节 剖析Shell对象 返回目录 Shell对象代表了一个窗口——要么是个顶级窗口,要么是个对话框。它容纳(contain)了各种各样的控件以构建应用程序:按钮、文本框、表格等等。它有六个构造函数,其中两个已不推荐使用,而且将来的发行版可能不再支持它们。构造过程沿用了SWT传递一个容器(parent)和一个样式(或者多个样式的位与or),有些构造函数允许单个或两个参数使用默认值。表3... 阅读全文