RCP开发日积月累

1. 关于SWT Layout (2006-8-17)
    GridLayout往往是很好的选择 (2006-8-23)
 
2. hibernate可以读取数据, 但插入或更新时, 无异常, 却不能正常更新 (2006--8-17)
    改用数据库连接池, DataSource, 可以使用 apache 的 dpcp
 
3. 为SWT Table 控件添加可编辑属性(2006-8-21)
    TreeView#setCellEditors(CellEditor[] editors)
    TreeView#setCellModifier(ICellModifier modifier)
 
4. SWT List 控件不支持图片 (2006-8-22)
    用 Table 代替
 
5. 怎么样设置SWT Table 的行高 (2006-8-28)
    方法一、创建一个相应高度的, 一像素宽的图片, 插到 TableItem 里

    方法二、

        table.addListener(SWT.MeasureItem,  new Listener() {

             void handleEvent(Event event)  {

                   event.height = 25; // here

             }

        });

 
6. 取得屏幕大小 (2006-8-30)
    参看Display#getPrimaryMonitor()
 
7. 关于SWT Table中, 加入其他控件 (2006-9-2)
    SWT Table 中 加其他控件, 用 TableEditor
    但要注意, 如果删除TableItem, 要重新构造所有行的 TableEditor.
 
8. 关于Hibernate 延迟加载 (2006-9-3)
    如果超出Session范围,读取延迟数据将会出错, 但却又不想把Session带到使用它的地方。因为这样会让Hibernate污染其他层. 而如果关掉 lazy 又损失性能. 怎么办?
    可以用 Hibernate.initialize(...), 主动提取需要的数据
   
9.在FormEditor中加SectionPart时,记得要把SectionPart加到ManagedForm中(折叠Section时,鼠标会显示忙) (2006--11-8)

10.StructuredViewer#setLabelProvider(... lp)
此 lp 可实现 IColorProvider 以及 IFontProvider 以便添加前景背景色,以及需要的字体效果

11. 方法有时候不在UI线程中,却要操作UI

java 代码

 

 
if (Display.getCurrent() != null) { 
    updateViewer(event); 
} else { 
    Display.getDefault().asyncExec(new Runnable() { 
        public void run() { 
            updateViewer(event); 
        } 
    }); 

 

 

12 有时候忙,却又不想太麻烦。
看看:org.eclipse.swt.custom.BusyIndicator

 

 

你可能感兴趣的:(apache,eclipse,UI,Hibernate)