如何在RCP中創(chuàng)建多頁面的Editor:
MultiPageEditor中的每一個(gè)頁面,可以是一個(gè)Editor,也可以是任何的一個(gè)SWT Composite。創(chuàng)建多頁面的Editor,首先需要繼承MultiPageEditorPart。在MultiPageEditorPart的createPages()方法中創(chuàng)建每一個(gè)Page。創(chuàng)建Page的方法有兩種,一種是使用addPage(IEditorPart,IEditorInput),接受一個(gè)Editor對象(創(chuàng)建這個(gè)Editor對象直接進(jìn)行new XXXEditor()即可),另一種是使用addPage(Control control)。創(chuàng)建這個(gè)control時(shí),使用getContainer()所得到的容器作為這個(gè)Composite的parent即可。而這個(gè)作為container的parent,可以想象的到,實(shí)際上就是一個(gè)CTabFolder。
這個(gè)CTabFolder在創(chuàng)建Editor時(shí)被自動(dòng)創(chuàng)建,并將其addSelectionListener的響應(yīng)事件,映射到MultiPageEditor的pageChange()方法上。因此,例如要同步不同頁面之間的內(nèi)容,如果要監(jiān)聽頁面切換的事件響應(yīng),只需實(shí)現(xiàn)pageChange()方法即可。
posted on 2005-07-28 17:44 Living Not Striving 閱讀(1773) 評論(0) 編輯 收藏 所屬分類: RCP 、ECLIPSE