
RCP系列
iteye_18655
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
UI的底层机制
EventHandler要抽象出一个接口来,然后根据不同的需要实现不同的handler,不然就无法在服务器reply以后通知UI更新,但至于是否要在UI中再生成异步线程来做这件事情,还要通过编码测试一下。 不过目前我的感觉是不需要再生成异步线程了,因为底层Peercore的操作本身就是异步的,不需要等待它的方法操作完毕以后再返回,应该只需要把UI中要更新的控件作为参数传到EventHandle...2006-09-18 14:54:00 · 333 阅读 · 0 评论 -
一个RCP的IM应用,请教关于网络故障及恢复的处理方法
目前是一个IM系统,需要在网络连接断开的时候,关掉主程序,回到登陆对话框,并且在网络连接恢复的时候,可以自动登陆,类似于MSN和Skype的功能。 我们底层用的是SMACk,在3.0的版本中,已经实现了自动登陆的功能,但现在的问题出现在网络故障的那一步,我们所作的是调用 PlatformUI.getWorkbench().restart()方法,实现重启,并且使用IPreferenceSto...2007-04-02 16:15:31 · 153 阅读 · 0 评论 -
关于Dispose SWT资源的思考与疑问
我们知道,在SWT中,有两条关于Dispose的法则: 1。如果你创建了它,那么就dispose它。你应当释放那些使用构造器创建了的SWT对象。 2。dispose一个父组件会dispose掉所有的子组件。 由 此可以得知,由于Color,Cursor,Font,GC,Image,Printer,Region都是在DeviceData之上创建,所以如果使 用构造器的话,就必须要手工把这些资源...2007-03-19 14:10:28 · 209 阅读 · 0 评论 -
使用Ant,Maven构建Eclipse RCP Product
通常我们打包Product的时候,一般都是通过Product的export操作来进行的,但这样的做法,则限制了Continous Integration的自动化执行,那么,应该如何编写自动化构建脚本呢? 一、首先,让我们看一下Eclipse官方的解决方案: http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.pde.doc.u...2007-03-06 19:55:53 · 380 阅读 · 0 评论 -
在Eclipse RCP中实现I18N的思考与疑问
在RCP产品中实现国际化,一般是两种方式。 方式一: public class Messages { private static final String BUNDLE_NAME = "test.messages"; private static final ResourceBundle RESOURCE_BUNDLE = Resou...2007-02-14 17:11:58 · 206 阅读 · 0 评论 -
Eclipse RCP开发书籍资料简介
为了给大家提供方便,我在这篇帖子里对常用的RCP参考资料作了一下简单的总结,有不当之处,还望多多批评指正。 1。入门 对于入门的RCP开发人员来讲,首先应当要对RCP有一个全局性的认识,reload_cn有一篇开源文档《RCP程序设计》,下载地址为:http://www.eclipseworld.org/bbs/read.php?tid=4457,这篇文档涵盖了RCP开发相关的许多知识点,是引...2007-01-22 11:31:02 · 467 阅读 · 0 评论 -
RCP中异步线程的处理
在RCP中要在非UI线程中执行UI线程的操作,最简单的方式就是display.syncExec或者display.asyncExec,如果UI线程所需的时间较长的话,则应该使用display.asyncExec 在执行异步线程的时候,我们一般应当继承Job或者UIJob类:UIJob是在UI线程中运行的,可以直接访问窗体组件。Job是在非UI线程中运行,如果在里面想访问窗体组件,需要通过Disp...2007-01-17 17:13:00 · 319 阅读 · 0 评论 -
ViewerFilter与自定义选中Column的颜色
ViewerFilter主要用于根据条件来显示或隐藏Tree或Table中的数据,它的实现就不赘述了,在程序中用了一个下拉框来做触发条件: filterCombo.addSelectionListener(new SelectionAdapter() { @Override public void widg...2006-12-26 16:10:59 · 142 阅读 · 0 评论 -
动态改变RCP应用程序的标题
我们知道,Title是在ApplicationWorkbenchWindowAdvisor里面通过 public void preWindowOpen() { IWorkbenchWindowConfigurer configurer = getWindowConfigurer(); configurer.setInitialSize(...2006-12-13 18:47:00 · 232 阅读 · 0 评论 -
使SWT的Table根据TableItem显示Tooltip
默认情况下,SWT的Table只会给整个Table设置Tooltip,要对每一个TableItem设置Tooltip的话,就要监听鼠标事件了: table.addMouseTrackListener(new MouseTrackAdapter() { public void mouseHover(MouseEvent event) { ...2006-12-11 19:13:00 · 303 阅读 · 0 评论 -
指定JFace.Dialog初始化的位置
目的1:打开一个新的对话框时,如何设定它和父对话框的相对位置?比如在登录对话框有一个“创建新帐号”的按钮,用户点击以后,就出现新的对话框用于注册,请问如何能让新的对话框和旧对话框排列的整齐一些?应该是能设定二者的相对位置吧? 最开始,以为要用Shell.setLocation来设置,但是对于一个Dialog而言,它的Shell在什么时候才能初始化呢? 我 在构造函数里面,configureSh...2006-11-08 15:23:00 · 171 阅读 · 0 评论 -
用RCP做出漂亮的对话框
首先是一个效果图: 为了不违反保密协议,偶在这里把logo和相关的东西都涂掉了,希望不会让人觉得难看.... ok,下面就开始讲述偶的coding过程: 首先捏,Dialog是分为三部分的,Window Title Bar,Content Area和Button Bar 这里的Window Title Bar素很难改动滴,偶也米改....而接下来的ContentArea和ButtonB...2006-10-16 18:11:00 · 437 阅读 · 0 评论 -
设置Perspective
在IWorkbenchPreferenceConstants中有很多常量,用来配置preference settings,诸如: OPEN_NEW_PERSPECTIVE——打开新视图的方式 DOCK_PERSPECTIVE_BAR——锁定PerspectiveBar的位置 INITIAL_FAST_VIEW_BAR_LOCATION——表示fast view bar在一个fresh works...2006-10-08 10:04:00 · 240 阅读 · 0 评论 -
用RCP实现MSN风格的登录窗口
需要以下的对象: LoginDialog,用于展示状态, LoginListener,用于监听登录状态,并根据不同的情况改变LoginDialog的显示 LoginAction,用于执行登录的业务逻辑,并且根据不同的结果来fire不同的动作。 状态一共有以下几种: 1。登录中 2。登录成功 3。登录失败 3.1 连接失败 3.2 用户名密码错误 3.3 ..... 4。用户取消登录 ...2006-09-25 19:02:00 · 461 阅读 · 0 评论 -
使用JFace Viewer注意事项
如果使用了Eclipse3.2提供的自绘制功能来在table或者tree里面绘制图像或文字的时候,就必须在LabelProvider中,将对应column的返回值置空,同时需要记住的是,即使所有的column都使用自绘制功能的时候,也必须要给viewer提供一个LabelProvider,否则每一行的第一列上都会显示出对应Object的toString()方法的结果。...2006-09-21 14:44:00 · 126 阅读 · 0 评论 -
SWT基础概念之一
Design decisions: Most platforms require that widgets be created within the context of a specific parent, so SWT requires that a parent widget be supplied as one of its constructor arguments. Anothe...2006-09-18 15:09:00 · 236 阅读 · 0 评论 -
Dialog相关
ModalessDialog: public class ModalessDialog extends Dialog { public ModalessDialog(Shell arg0) { super(arg0); setShellStyle(SWT.SHELL_TRIM | SWT.MODELESS | SWT.RESIZE | SWT.MAX); } } 程序中需要双击摄像...2006-09-18 15:09:00 · 107 阅读 · 0 评论 -
有关CellEditor
为了批量发布设备,需要在一个窗口中为设备命名,设定其类型等,要用到Combo,所以就用了CellEditor 用CellEditor还是很方便的,有CheckboxCellEditor,ComboBoxCellEditor,LabelCellEditor,TextCellEditor等等。 首先把TableColumn的名称做成String数组,调用viewer.setColumnProper...2006-09-18 15:08:00 · 262 阅读 · 0 评论 -
使用Sleak分析RCP应用潜在内存泄露
1. following the website(http://www.eclipse.org/swt/tools.php) instructions:1)Extract the zip into the eclipse/plugins/ folder2)Extract the .options file from the eclipse/plugins/org.eclipse.ui_.jar/ ...2008-02-14 16:14:39 · 365 阅读 · 0 评论