- 浏览: 129277 次
- 性别:
- 来自: 上海
最新评论
-
一叶之源:
总结一下eclipse中的Job机制 -
xinxinlong:
lAnchor.getDy1() 是什么意思
操作excel--稍后整理 -
defrag_sly:
3.7是好用的,只是再mac下面不支持,mac不支持的效果还有 ...
swt下如何做出一个反向展开效果的tree -
defrag_sly:
eclipse3.7不好用了。谁知道给补充一下。
swt下如何做出一个反向展开效果的tree -
hamlzf:
好文!mark!
基于 OSGi 的面向服务的组件编程
文章列表
总结一下eclipse中Job,Job可以说是eclipse中比较核心又在我们使用中经常碰到的一种机制。本质上是eclipse中的多线程的一种表现,与IRunnable功能类似。但是更加对象化,容易扩展和控制,属于eclipseUI的一部分。表现上的区别:Job会在右下角显示进度条,IRunnable则不会(只有靠MonitorDialog),更加的友好。可以是在前台显示,也可以不显示进度条setSystem(true);。我们最常见到的要属java的自动编译了。
Eclipse为Job提供了3个扩展:WorkspaceJob,UIJob,WorkbenchJob.算上Job本身构成了ecli ...
- 2009-03-06 17:38
- 浏览 11627
- 评论(1)
利用下班前的2小时,体验了一把javaFX。看着网上热热闹闹的评论。
下载了个netbeans for javaFX
http://developers.sun.com.cn/javafx/downloads/all.jsp
看了一遍基本教程
http://developers.sun.com.cn/javafx/1/tutorials/ui/overview/index.html
做了个小小小例子,
找到了个API网址
http://java.sun.com/javafx/1.1/docs/api/index.html
发现了一个社区(暂时没啥用,期待有更好的文章)
http://www.un ...
创建gef框架。
按照基本习惯定义gef各部分包名:
Gef是一个标准的MVC框架,模型层变化,以EditPart为中枢,驱动界面显示层的改变。这就需要建立EditPart与模型层的关联,和EditPart与显示层的关联。
下面介绍EMF模型如何与EditPart建立基本关联。
创建EMFBaseEditPart。
package org.rufus.gef.emf.examples.tree;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EObject;
im ...
以GefTree为例解释一下如何结合使用gef+emf。
(1)创建EMF模型
假设大家对EMF有些了解。首先是模型的设计:创建一个空EMF工程,然后创建一个ecore文件,定义gef的根模型Diagram,定义模型Tree。一般的tree模型都是有Parent和Node组成,所以定义模型TreeContainer,TreeNode。设置TreeContainer的超类为TreeNode。
然后设置引用关系:增加Diagram对Tree的引用,upperBound=-1 ,contanment=True。设置Tree的根节点增加Tree对TreeContainer的引用,contanment=T ...
- 2009-03-05 14:20
- 浏览 1519
- 评论(0)
gef写的tree例子--模型修改为emf
- 博客分类:
- Eclipse
模型部分已经修改为emf模型。
使用emf模型最大的好处是:
1、数据的持久化不需要我来操心。
2、不再需要古老的propertylistener。
3、对模型需要修改的情况下可以准确及时地修改,有工具支持(ecore文件等等)。如果安装了gmf提供的ecore文件的转换工具。更可以象修改类图一样修改。方便。
缺点是,效率上面有些人抱怨,比较浪费资源。但怎么说也是一个第三方的持久化插件。我喜欢。
又整理一下代码,增加了删除。
移动决定不做了,都是坐标之类的算法。有空再补上吧。
计划依旧
做些扩展点,供其它项目使用,和使用emf之类模型。
主要为了学习。请大家提意见。
- 2009-02-26 18:06
- 浏览 1457
- 评论(3)
计划
1、删除,移动做上去
2、将模型层提供为扩展点,(可以使用emf模型)
3、将tree提供为扩展点,供其它项目使用。
一个计算tree层次的方法,请大家多提意见
- 博客分类:
- java
private int getTreeLevel(TreeNode tree) {
List children = tree.getChildren();
//当tree 没有层次时
int level = 0;
int childLevel = 0;
for (int i = 0; i < children.size(); i++) {
//有层次计level=1,level值:1:0
//level的值为规头值不可省略。
level= 1;
TreeNode child = ...
相信不需要多说,大家都明白调用本地资源例如(icon)这类的资源是需要消耗很多性能的。SWT提供了Image这个对象,如果大家看看Image这个类,就会发现,对与图片的颜色,大小,色调等等所有的图形信息,封装到了ImageData(其实ImageData里还有个PaletteData,这个对象占用了很多资源)里面。也就是说每创建一次image就需要重新构筑一次ImageData。所以对于同一图片如果只创建一次,就会对效率有很大的提高。相信这是所有人都希望做的的事。
所以SWT对image提供了ImageDescriptor进行描述或者说代理,imageRegistry进行管理。在我们的实际开发中 ...
JWebPane : 解析html时或许可用。
MiGLayout :SWT中布局美化或许可用
其中值得关注的一个是JWebPane演示会,它是一个针对Java的新HTML组件。
JWebPane比Swing的JEditorPane更强大,后者只能支持HTML 3.2。该组件基于开源引擎WebKit,支持H ...
- 2009-02-12 16:50
- 浏览 1666
- 评论(0)
Yahoo!优异性能(Yahoo!'s Exceptional Performance)开发团队成员 Stoyan Stefanov 出席了蒙特利尔的2008魁北克PHP会议演讲。他提供了他们团队最新的研究成果和提高网页性能规则20条。在早先的高性能网页开发14条军规已经让大家耳熟能详, ...
- 2008-12-18 17:39
- 浏览 1075
- 评论(0)
1、协议支持简单
2、不支持css
3、http协议需要改进
import java.io.File;
import java.io.IOException;
import java.net.URL;
import java.awt.*;
import java.awt.image.*;
import javax.swing.*;
import javax.swing.text.*;
import javax.swing.text.html.*;
public class WebCapture {
public static voi ...
- 2008-11-18 12:20
- 浏览 1208
- 评论(0)
1、什么样的设计才是合理的设计?
2、合理的时间下既保证设计的全面,又避免重大设计bug。
3、正确的安排进度,有效的激励组员
4、使用严格的测试标准
5、修改设计要有依据,有负责人,由项目经理最终确认,然后周知给相关人员。
6、领导的榜样作用很重要
8、领导除了胆大一定要心细。
9、关键模块的代码,结构性要强,扩展性要强。有变更时解决方案要详细,有据可依,文档化。
10、避免变更一旦复杂,或频繁多变,会造成代码难以维护的问题。
12、领导决策能力强,可以与客户直接交流想法,控制需求变更。
13、善于协调公司内个方面关系。
14、对人员给与鼓励,提供上升机会。
15、不要孩子气。
16、学习对项 ...
- 2008-11-12 14:08
- 浏览 770
- 评论(0)
“很难相信Java居然能和C++一样快,甚至还能更快一些。”
据我自己的实践,这种说法确实成立。然而,我也发现许多关于速度的怀疑都来自一些早期的实现方式。由于这些方式并非特别有效,所以没有一个模型可供参考,不能解释Java速度快的原因。
我之所以想到速度,部分原因是由于C++模型。C++将自己的主要精力放在编译期间“静态”发生的所有事情上,所以程序的运行期版本非常短小和快速。C++也直接建立在C模型的基础上(主要为了向后兼容),但有时仅仅由于它在C中能按特定的方式工作,所以也是C++中最方便的一种方法。最重要的一种情况是C和C++对内存的管理方式,它是某些人觉得Java速度肯定慢的重要依据: ...
- 2008-11-07 14:07
- 浏览 893
- 评论(0)