2017-07-19 4 views
1

Eclipseプラグインでビューを閉じる前にメッセージを表示したいとします。 クローズイベントをキャッチするにはどうすればいいですか? addListenerObject(Object listener)メソッドを使用していますか?Viewイベント終了イベントをキャッチしますか?

@Override 
    public void createPartControl(Composite parent) { 

    //Catch view closing event 
    this.addListenerObject(new //??? 

    }); 

    } 
+0

が重複する可能性:すべての部品の状態変化について語ったことが

@Override public void dispose() { // TODO your code super.dispose(); } 

あなたはまたIPartListenerを使用することができます。

あなたは、ビューのdisposeメソッドをオーバーライドすることができます(https://stackoverflow.com/questions/3777146/how-can-a-swing-windowlistener-veto-jframe-closing) –

+0

@RanadipDuttaこのリンクはSwing用ですが、これはEclipse Plugin/SWTです。これはまったく別のものです。 –

+0

表示したいだけのメッセージか、ビューを閉じるのをやめようとしていますか? –

答えて

2

addListenerObjectはここでは関係ありません。 [THIS]の

getSite().getPage().addPartListener(new IPartListener() 
    { 
    @Override 
    public void partOpened(final IWorkbenchPart part) 
    { 
    } 


    @Override 
    public void partDeactivated(final IWorkbenchPart part) 
    { 
    } 


    @Override 
    public void partClosed(final IWorkbenchPart part) 
    { 
     if (part == MyView.this) { 
     // TODO Your code 
     } 
    } 


    @Override 
    public void partBroughtToTop(final IWorkbenchPart part) 
    { 
    } 


    @Override 
    public void partActivated(final IWorkbenchPart part) 
    { 
    } 
    }); 
関連する問題