2

我想知道为什么 swt 使用起来这么不方便。作为程序员,我们必须生成大量不必要的源代码。这里举个例子。

Label label = new Label(parent, SWT.NONE);  
label.setText("labelname");  

最小值是这样的:

createLabel(parent, "labelname");

我建立了一个方便的库,我想知道是否有类似的东西,或者为什么 SWT 或 JFace 不采用这种简单的方式。拥有更多覆盖 80% 编程任务的构造函数有什么缺点吗?

更详细地看看我做了什么。
SWT:请提供更多便利

4

3 回答 3

2

我建议尝试Google Window Builder Pro。它是 Eclipse 的一个插件,允许在 SWT、Swing、RCP、JFace 等中进行 GUI 的图形化开发。GWB 编写指定 GUI 布局的代码,您所要做的就是编写代码来处理事件。

于 2011-09-29T01:04:36.583 回答
1

据我所知,没有这样的通用库。为创建 swt 控件提供一些基本工厂支持的一个实例是JFace Form Widget。也看看这个org.eclipse.ui.forms.widgets.FormToolkit

从您的实现看来,您假设 是GridLayout默认的布局样式。除此之外,一个控件可能有许多与布局相关的数据,比如它的缩进(水平和垂直)、跨度等。这不容易用工厂方法覆盖。

如果您不想花费额外的精力来编写用于布局小部件的代码,那么请查看Visual editorhttp://www.eclipse.org/archived/ 。

此外,eclipse 本身正朝着模型驱动的一代 (http://www.eclipse.org/e4/) 发展。难怪我们会看到像 Netbeans 这样的 SWT UI 设计器(顺便说一句,我已经使用 eclipse 建模框架和 GEF 为我们的工具编写了一个版本)。

我仍然建议您手动编写平凡的布局代码,因为它会提高您对 SWT 的理解。

于 2011-09-28T18:39:32.877 回答
0

字节的生产成本非常低,我认为 SWT“使用起来非常不方便”——如果它是自动生成的,那有什么不方便的呢?

我们的计算机速度如此之快,以至于我们甚至无法察觉其中的差异……而且节省的时间是巨大的。

于 2011-09-27T21:11:50.587 回答