`
hpf911
  • 浏览: 19910 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

初试 SWT Designer ——安装 ,注册,简单demo

阅读更多

SWT 是IBM 搞的一个东东,他的全称是 Standard Widget Toolkit ,相对于 awt ,他拥有更好看的外表;相对于swing ,他拥有更小的内存占用,以及更少的bug 。 目前想用swt开发一个游戏中的任务编辑器 ,同时能够做成Eclipse插件的形式。这两样一个也没接触过,那就从头开始吧!

首先下载swt designer ,很好的swt开发工具 ,开发界面相当于vb 了,很人性化。

下载地址是:http://www.instantiations.com/windowbuilder/swtdesigner/

建议下载6.8稳定版,配合Eclipse3.4 ,完美组合。。。 之前用Eclipse3.5 + SWT designer 7.2 ,结果老是安装不成功,看来最新的未必是最好的,稳定才是王道!

完了之后下载一个swt designer 的注册机,生成注册码后,

在Eclipse--preferences-- Designer 中添加注册完成

至此,安装和注册部分结束。

之后是简单demo的实现 。和ActionScript 类似,swt也有容器以及显示控件的概念。swt 程序中,只能有一个Display 类,这个类是个单例模式的类,负责分发处理各个事件,Shell类是一个外壳类,也就是相当于一个window,在shell中放置各种组件。

同时,还有composite组件,相当于是flash众的panel ,用来放置各个显示对象(组件)。再放置button,或者label 之前,必须要先添加一个composite ,这样布局才比较容易。 否则,会出现有一个屏幕大小的button。。。。。。

说到布局,swt也有好多种layout ,基本相当于awt的layout ,反正都不喜欢用,还是用自己定坐标来布局——使用swt Designer的好处,就是可以拖拽 。

然后就是熟悉各种组件了,比如tree ,button ,label ,table ,menu,combo 等等,某些组件下还有子类,比如treeitem ,menuitem,等等。。。。。。基本类似于vb ,还是比较好搞的

组件需要被添加到一个容器里面,如下面这个MessageBox 被添加到了shell窗口中,调用open方法,才能显示出来

MessageBox msg=new MessageBox(shell,SWT.OK);
msg.setMessage("您选择了:"+combo_1.getText());
msg.open();

接下去就是写事件,例如给一个combo加事件:

combo.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(final SelectionEvent e) {
Integer num=((((Combo)e.widget).getSelectionIndex()));//得到编号e.widget相当于得到当前对象,和as中的e.target类似
String str=combo.getItem(num);//通过编号得到内容
label.setText(str);
}

});

这个事件和awt也很相似,基本一样吧。。。。。。

能添加组件,能写事件,差不多就能满足所需要的功能了,开发起来还是很快捷的,swt Designer 真是java中的vb 啊!~

至此,第一阶段的试水结束。

下一个目标是写个 Eclipse 插件 (据说初入IBM的人都被要求写这个插件,看看能力。。。。。。不知真否?)

下面提供swt的学习视频,在线看的,适合入门 :

http://school.itzcn.com/video-vid-497-spid-17.html

IBM 网站上的swt全接触

http://www.ibm.com/developerworks/cn/opensource/os-swt/

还有swt的注册机,以及api,不知道从哪里传附件~~~有需要的人给我留言吧。。。。。。

期待下一篇啦~~

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics