本次項(xiàng)目開(kāi)發(fā)中需要在RCP中集成Swing的一個(gè)組件,并且需要監(jiān)聽(tīng)Swing的消息打開(kāi)JFace的對(duì)話框,本來(lái)這種方式是比較簡(jiǎn)單的需求,但由于不知SWT和Swing是在不同的線程中運(yùn)行造成了許多笑話.如打開(kāi)的對(duì)話框后,無(wú)法刷新Swing的頁(yè)面,主要是考慮到有些代碼在Swt中,因此,用了同步運(yùn)行的方式來(lái)打開(kāi)對(duì)話框,造成了線程阻塞.一定要以異步方式打開(kāi).下次堅(jiān)決不能犯如此低級(jí)的錯(cuò)誤.
display.asyncExec(new Runnable() {
public void run() {
setStatusLineMessage(message);
}
});