2012-08-25 71 views
0

我有一個FormEditor和一個FormPage,我想在頁面被放到最前面(以便它對用戶可見)時開始一些操作。Eclipse RCP:如何確定一個編輯器頁面是否被帶到前面

問題是編輯器在嚮導中打開,並且在頁面可見之前調用setActive()

我想通過ModalContext.run()顯示頁面時啓動IRunnableWithProgress,並在另一個線程中創建的頁面上顯示一些結果。但是,目前這仍然在嚮導仍然可見時完成。

非常感謝您的幫助,

邁克爾

回答

2

想到的是重寫setActivePagepageChangeFormEditor,或使用addPageChangedListener前幾個選項。如果您不希望每次頁面變得可見時都運行,您總是可以擁有某種標誌來控制您的任務。

另一個選項(基於你的問題,聽起來你想在嚮導完成後專門運行這個任務),你可以使用Display.getDefault().asyncExec開始你的任務,當嚮導完成後堆棧展開。

相關問題