㈠ eclipse rcp怎樣學習
貌似的資料比較少,僅有的也沒發現介紹的比較詳細的,現在都是東學一點西學一點,此帖簡單記錄一下要點
1.RCP中怎麼實現全屏顯示的程序
類中增加以下代碼
public void postWindowCreate(){
super.postWindowCreate();
getWindowConfigurer().getWindow().getShell().setMaximized(true);
}
2.在設置Layout為 BorderLayout時,會自動增加swing2swt.jar,但是在運行該工程時會報錯,The activator ****.Activator for bundle aabb is invalid
我的解決辦法是 打開plugin.xml文件,選擇Runtime標簽,在Classpath中將swing2swt.jar刪除後再增加進來,並把swing2swt.jar Add to Build Path
3.增加table事件,點擊某一行時改變顏色,始終沒有效果出現
代碼
終於發現這個問題是創建TableView時選擇樣式FULL_SELECTION ,設置選擇一行高亮的樣式後,設置點擊某一行時改變顏色(前景,後景色)就不起作用
但是出現新問題,只能選中第一列中的單元格
4.表格中只能選擇單元格中的文字,如何選擇整個單元格
5.在實現ITableColorProvider 介面後修改背景色之後,在TableItem中設置背景色時無效了
6.SWT/JFace的TableView為何設置行高這么麻煩,沒有一個屬性可以直接Set的
table.addListener(SWT.MeasureItem, new Listener() {
@Override
public void handleEvent(Event event) {
event.height = 25;
}
});
7. 將首選項的"恢復"和"應用"按鈕隱藏
noDefaultAndApplyButton();
setValid(false);
8.RCP開發中的missing required bundle
在dependencies中已經添加了所需要的插件,但是運行時出現了missing required bundle錯誤
在運行設置對話框的Plug-in中選擇add required plug-ins,這樣系統會自動載入RCP項目運行所需要的插件
9.系統Preference 首選項的調用
IWorkbenchAction preferenceAction = ActionFactory.PREFERENCES.create(window)
10.SWT中org.eclipse.core.runtime.AssertionFailedException: assertion failed
代碼
you have either not set the CellModifier for the TableViewer (using the setCellModifier() function)
or, if you have, then the getValue() function of your ICellModifier descendant returns either null or not a String object.
The return value of getValue() is an object, but if you are using a TextCellEditor, it has to return a String.
11.保存工作區,以便在下次打開時恢復關閉時的狀態
在ApplicationWorkbenchAdvisor 類中增加override initialize方法
public void initialize(IWorkbenchConfigurer configurer) {
configurer.setSaveAndRestore(true);
}
12.固定透視圖在createInitialLayout()內部調用通過layout的setFixed(true)方法,或者直接在plugin.xml文件件中添加fixed="true"屬性