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

📄 sy010200.java.svn-base

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

import java.awt.BorderLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JPopupMenu;
import javax.swing.tree.TreeSelectionModel;

import jm.entity.command.DBCommandKeys;
import jm.entity.command.SystemCommandKeys;
import jm.entity.system.ESC000600;
import jm.entity.system.ESC000700;
import jm.entity.util.MenuFrameBean;
import jm.form.gui.swing.game.system.SystemManager;
import jm.framework.gui.AppCtrlHandler;
import jm.framework.gui.ReLoad;
import jm.framework.gui.module.jmtree.SimpleTree;
import jm.framework.gui.module.jmtree.model.JMNode;
import jm.framework.gui.module.jmtree.model.JMTreeNode;
import jm.framework.util.SimpleDBTable;
import jm.util.JM2DArray;
import jm.util.JMMap;

/**
 * <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 class SY010200 extends JPanel implements AppCtrlHandler, ReLoad {
    private JPopupMenu RightMenu = new JPopupMenu();
    private JMenuItem OpenMenuItem = new JMenuItem("打开");
    /**
     *
     */
    private String name = "CRM";
    private JM2DArray datasSource = null;
    private SimpleTree menuTree = null;
    private JMNode userSelectNode = null;

    /**
     * 鼠标点击处理
     * @param e MouseEvent
     */
    private boolean openWorkForm (MouseEvent e) {
        if (userSelectNode == null) {
            return false;
        }

        ESC000600 mwnuInfo = new ESC000600();
        try {
            mwnuInfo.setGamenID(datasSource.getStringValue(userSelectNode.getNodeIndex(), JMNode.NODE_VALUE));
            mwnuInfo.setName(datasSource.getStringValue(userSelectNode.getNodeIndex(), JMNode.NODE_NAME));
            mwnuInfo.setReserve01(datasSource.getStringValue(userSelectNode.getNodeIndex(), JMNode.NODE_RESERVE01));
            mwnuInfo.setReserve02(datasSource.getStringValue(userSelectNode.getNodeIndex(), JMNode.NODE_RESERVE02));
            mwnuInfo.setReserve03(datasSource.getStringValue(userSelectNode.getNodeIndex(), JMNode.NODE_RESERVE03));
        } catch (Exception ex) {
            userSelectNode.setActive(false);
            SystemManager.getInstance().showErrorMessageDialog(SystemCommandKeys.SYSTEM_WARING);
            return false;
        }

        MenuFrameBean bean = new MenuFrameBean();
        bean.setFrameBean(gamenConfig.get(mwnuInfo.getGamenID()));
        bean.setMenuBean(mwnuInfo);

        /**
         * 响应操作
         */
        return true;//SystemManager.getInstance().openWorkForm(bean);
    }

    public ESC000700 getGamen (String key) {
        return gamenConfig.get(key);
    }

    private JMMap<String, ESC000700> gamenConfig = new JMMap<String, ESC000700>();

    public boolean reLoad () {
        SimpleDBTable dbTable = null;
        try {
            //画面管理
            dbTable = new SimpleDBTable(DBCommandKeys.DBTABLE_GAMEN);
            datasSource = dbTable.select().getResultData();
            ESC000700 temp = null;
            for (int i = 0; i < datasSource.rowCount(); i++) {
                temp = new ESC000700();
                temp.setGamenClose(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENCLOSE));
                temp.setGamenID(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENID));
                temp.setGamenMax(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENMAX));
                temp.setGamenMin(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENMIN));
                temp.setGamenName(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENNAME));
                temp.setGamenPath(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENPATH));
                temp.setGamenResize(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENRESIZE));
                temp.setGamenRool(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENROOL));
                temp.setGamenType(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENTYPE));
                temp.setOperationType(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_OPERATIONTYPE));

                gamenConfig.put(datasSource.getStringValue(i, DBCommandKeys.DB_KEY_SC000700_GAMENID), temp);
            }

            //菜单配置
            dbTable = new SimpleDBTable(DBCommandKeys.DBTABLE_MENU);
            String[] field = {"MenuID AS " + JMNode.NODE_CODE,
                             "Name AS " + JMNode.NODE_NAME,
                             "ParentMenuID AS " + JMNode.NODE_PATH,
                             "GamenID AS " + JMNode.NODE_VALUE,
                             "Reserve01",
                             "Reserve02",
                             "Reserve03"};

            datasSource = dbTable.select(field,
                                         DBCommandKeys.DEL_FLAG,
                                         DBCommandKeys.DB_KEY_SC000600_SORT).getResultData();
        } catch (Exception exception) {
            return false;
        }
        return true;
    }

    public boolean init (String asAppId, String asInitOption) {
        try {
            menuTree = new SimpleTree(name, datasSource);
            SY01020A menuJMTreeRender = new SY01020A();
            RightMenu.add(OpenMenuItem);
//            RightMenu.add(TooltipMenu);
//            TooltipMenu.add(TooltipMenuItem);
            OpenMenuItem.addMouseListener(new java.awt.event.MouseAdapter() {
                public void mousePressed (MouseEvent e) {
                    userSelectNode.setActive(openWorkForm(e));
                }
            });

            menuTree.setCellRenderer(menuJMTreeRender);
            menuTree.getTree().showAngledLine(false);
            menuTree.getTree().getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
            menuTree.getTree().addMouseListener(new MouseAdapter() {
                public void mouseClicked (MouseEvent e) {
                    int selRow = menuTree.getTree().getRowForLocation(e.getX(), e.getY());
                    if (selRow != -1) {
                        menuTree.getTree().setSelectionPath(menuTree.getTree().getPathForLocation(e.getX(), e.getY()));
                    }
                    JMTreeNode treeNode = menuTree.getTree().getLastSelectedPathComponent();
                    if (treeNode != null && treeNode.isLeaf()) {
                        userSelectNode = treeNode.getUserObject();
                        try {
                            boolean canActive = userSelectNode.isActive();
                            if (canActive) {
                                if (e.getClickCount() == 2) {
                                    userSelectNode.setActive(openWorkForm(e));
                                    return;
                                }
                                if (e.getButton() == MouseEvent.BUTTON3) {
                                    RightMenu.show(menuTree.getTree(), e.getX(), e.getY());
                                    return;
                                }
                            } else {
                                userSelectNode.setActive(false);
                            }
                        } catch (Exception ex) {
                            userSelectNode.setActive(false);
//                            userSelectNode.setNodeName("...X");
                        }
                    }
                }
            });

            //menuTree.getTree().setRootVisible(false);
            //menuTree.init();
            menuTree.expandAllRow();
            this.setLayout(new BorderLayout());
            this.add(menuTree, java.awt.BorderLayout.CENTER);

        } catch (Exception exception) {
            return false;
        }
        return true;
    }

    public boolean queryClose () {
        return true;
    }

    public void dispose () {
    }

}

⌨️ 快捷键说明

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