ページの先頭行へ戻る
Interstage Studio J Business Kit 解説書
FUJITSU Software

2.3.11 アプレットへの終了問合せ

JBKプラグインが提供するアプレットへの終了問合せ機能を説明します。

注意

この機能は現在の環境では推奨しません。

詳細は、“2.7 注意事項”の“アプレットの破棄”を参照してください。

JBKプラグインは、ユーザがブラウザのウィンドウを閉じようとしたときに、そのウィンドウ上で実行しているアプレットに対して終了の問合せを行う機能を提供しています。この機能を使用するアプレットは、JBKプラグインからの終了問合せに対して、終了の許可/不許可を返答することができます。

それぞれの場合の動作は以下のようになります。

この機能を用いると、アプレットがある特定の処理(例えばデータベースへの接続処理など)を行っている場合に、ブラウザの終了を一時的に抑止することが可能になります。

アプレットへの終了問合せ機能

アプレットからJBKプラグインの終了問合せ機能を使用するには、アプレットにPluginAppletCallbackインタフェースを実装してください。PluginAppletCallbackインタフェースはJBKプラグインが提供するインタフェースです。PluginAppletCallbackインタフェースのAPIは以下のとおりです。

終了問合せ機能を使用するアプレットの例

import java.applet.*;

import com.fujitsu.jbk.plugin.browser.PluginAppletCallback;

/**
 * 終了問い合わせを使用するアプレット
 */
public class DestroySample extends Applet implements PluginAppletCallback
{
    /**
     * アプレットの終了問い合わせ時に呼び出されるメソッド
     */
    public boolean destroyRequested() {
        // アプレットの終了を許可しない場合にはfalseを返してください。
        if (/* アプレットの終了を許可しない場合 */) {
            return false;
        }

        // アプレットの終了を許可する場合にはtrueを返してください。
        return true;
    }

    /**
     * アプレットの終了が不許可となり、ブラウザのウィンドウを閉じる処理が
     * キャンセルされたときに呼び出されるメソッド
     */
    public void destroyCancelled() {
        // ブラウザのウィンドウを閉じる処理がキャンセルされたときに
        // 何か処理を行う必要がある場合には、ここに記述してください。
    }
}

注意

destroyRequested()メソッドおよびdestroyCancelled()メソッドの中では、ダイアログ表示およびキーボードやマウス入力などのGUI操作を伴う処理を行わないようにしてください。これらの処理を行うと、ブラウザが処理を受け付けなくなる場合があります。

複数のアプレットが実行されている場合

ブラウザのウィンドウ上で複数のアプレットが実行されている場合には、JBKプラグインはそれらすべてのアプレットに対して順番にdestroyRequested()メソッドを呼び出します。