⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 basedialog.java.svn-base

📁 梦界家园程序开发基底框架
💻 SVN-BASE
字号:
package jm.form.gui.swing.game.util.model;

import java.awt.Container;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JDialog;

import jm.form.gui.swing.game.system.SystemManager;
import jm.framework.gui.AppActionHandler;
import jm.framework.gui.AppCtrlHandler;
import java.awt.Window;
import java.awt.Dialog;
import java.awt.Frame;

/**
 * <p>Title: JM 整合Swing控件,使用配置信息</p>
 *
 * <p>Copyright: Copyright (c) 2004-2006</p>
 *
 * <p>Company: 1SHome</p>
 *
 * <p>@author Spook</p>
 *
 * @since 1.3
 * @see JDK 1.5.0.6
 */
public abstract class BaseDialog extends JDialog implements AppActionHandler,AppCtrlHandler {

    public void exit () {
        this.setVisible(false);
        this.dispose();
    }

    protected Container Owner_ = null;

    public BaseDialog () {
        super(SystemManager.getInstance().getMainBackGround(), true);
        Owner_ = SystemManager.getInstance().getMainBackGround();
        setDefault();
    }
    public BaseDialog (Dialog owner,boolean modal) {
        super(owner, modal);
        Owner_ = owner;
        setDefault();
    }

    public BaseDialog (Frame owner, boolean modal) {
        super(owner, modal);
        Owner_ = owner;
        setDefault();
    }

    public void setOwner (Container owner) {
        Owner_ = owner;
    }

    protected final int BZ_WITH = 10;
    protected final int BZ_HEIGHT = 15;

    private void setDefault () {
        this.setSize(800 + BZ_WITH, 600 + BZ_HEIGHT);
        this.setResizable(false);
//        setDefaultCloseOperation(DISPOSE_ON_CLOSE);
        addWindowListener(new WindowEventHandler());
    }

    /**
     * 关闭
     */
    private final void close () {
        try {
            this.setVisible(false);
            this.dispose();
            System.gc();
        } catch (Exception ex) {
        }
    }
    /**
     * 接收窗口事件的抽象适配器类
     * 使用扩展的类可以创建侦听器对象,然后使用窗口的 addWindowListener 方法向该窗口注册侦听器。
     * 当通过打开、关闭、激活或停用、图标化或取消图标化而改变了窗口状态时,将调用该侦听器对象中的相关方法,
     * 并将 WindowEvent 传递给该方法
     */
    private class WindowEventHandler extends WindowAdapter {

        /**
         * 窗口正处在关闭过程中时调用。此时可重写关闭操作。
         * @param  e
         */
        public void windowClosing (WindowEvent e) {
            if (queryClose())
                close();
        }

        /**
         * 已打开窗口时调用。
         * @param  e
         */
        public void windowOpened (WindowEvent e) {
        }

//        /**
//         *  激活窗口时调用
//         * @param  e
//         */
//        public void windowActivated(WindowEvent e) {
//        }
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -