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

📄 sy010300.java.svn-base

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

import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

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

import jm.dbo.JMDBOConfig;
import jm.form.gui.swing.game.sc.sc00.MailFrame;
import jm.form.gui.swing.game.sy.command.SYCommandKeys;
import jm.form.gui.swing.game.sy.sy02.SY020000;
import jm.form.gui.swing.game.sy.sy02.SY02000B;
import jm.form.gui.swing.game.sy.sy0z.SY0Z0000;
import jm.form.gui.swing.game.util.UserInfo;
import jm.framework.gui.AppCtrlHandler;
import jm.framework.gui.Chat;
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.DBInValue;
import jm.framework.util.DBOutValue;
import jm.util.JM2DArray;

/**
 * <p>Title: JM 整合Swing控件,使用配置信息</p>
 * <p>系统用户 JMPanel(Tree)</p>
 * <p>Copyright: Copyright (c) 2004-2006</p>
 *
 * <p>Company: 1SHome</p>
 *
 * <p>@author Spook</p>
 *
 * @version 1.3
 * @see JDK 1.5.0.6
 */
public class SY010300 extends JPanel implements AppCtrlHandler, Chat, ReLoad {
    ////////////////////////////////////
    private JMenuItem PeopleLook_ = new JMenuItem(SYCommandKeys.TEXT_LOOK_OTHER);

    /**
     *
     */
    private String name = "GROUP";
    private JM2DArray dataSource = null;
    private SimpleTree peopleTree = null;
    private SY02000B RightMenu = null;
    private UserInfo UserInfo_ = null;
    /**
     * 鼠标点击处理
     * @param e MouseEvent
     */
    public void onMouseClicked (MouseEvent e) {
        RightMenu.setMouseEvent(e);
        JMTreeNode treeNode = peopleTree.getTree().getLastSelectedPathComponent();
        //有效数据
        if (treeNode != null) {
            JMNode node = treeNode.getUserObject();
            //根
            if (treeNode.isRoot()) {
                if (e.getButton() == MouseEvent.BUTTON3) {
                    //配置
                    RightMenu.setRightMenu(RightMenu.ALL, SYCommandKeys.TEXT_TO_ALL);
                    //显示弹出菜单
                    RightMenu.showPopupMenu();
                }
                //根结束  ///////////////////////////////////////////////////
            } else if (treeNode.isLeaf()) { // 人员
                try {
                    boolean canActive = node.isActive();
                    UserInfo_ = new UserInfo();
                    UserInfo_.setLoginID(node.getNodeValue());
                    UserInfo_.setLName(node.getNodeName());
                    UserInfo_.setLIPAddress(node.getNodeReserve01());
                    if (canActive) {
                        if (e.getClickCount() == 2) {
                            doSendMessage(e);
                            return;
                        }
                        //鼠标判定
                        if (e.getButton() == MouseEvent.BUTTON3) {
                            //配置
                            RightMenu.setRightMenu(RightMenu.ALL, "");
                            RightMenu.insert(PeopleLook_, 0);

                            //显示弹出菜单
                            RightMenu.showPopupMenu();
                        }
                    } else {
                        //配置
                        RightMenu.removeAll();
                        RightMenu.add(PeopleLook_);
                        //显示弹出菜单
                        RightMenu.showPopupMenu();
                    }
                } catch (Exception ex) {
                    node.setActive(false);
                }

                //人员结束//////////////////////////////////////////////////////
            } else { //文件夹
                if (e.getButton() == MouseEvent.BUTTON3) {
                    //配置
                    RightMenu.setRightMenu(RightMenu.ALL, SYCommandKeys.TEXT_TO_GROUP);
                    //显示弹出菜单
                    RightMenu.showPopupMenu();
                    //文件夹结束
                }
            }
        } //有效数据判定结束
    }

    private void doShowPeople (MouseEvent e) {
        SY0Z0000 userInfoDialog = new SY0Z0000();
        // userInfoDialog.load();
        //userInfoDialog.setLocationRelativeTo(ChatFrames.getInstance(false));
        userInfoDialog.setVisible(true);
        Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
        userInfoDialog.setLocation((d.width - 400) / 2,
                                   (d.height - 300) / 2);
    }

    public Component getPopupMenuParent () {
        return peopleTree.getTree();
    }

    public void doSendMessage (MouseEvent e) {
        System.out.println(UserInfo_);
        SY020000.getInstance(true).doSendMessage(UserInfo_);
    }

    public void doSendSound (MouseEvent e) {
        SY020000.getInstance(true).doSendSound(UserInfo_);
    }

    public void doSendFile (MouseEvent e) {
        SY020000.getInstance(true).doSendFile(UserInfo_);
    }

    public void doSendMail (MouseEvent e) {
        MailFrame.getInstance(true).doSendMail(UserInfo_);
    }

    public boolean reLoad () {
        try {
            DBOutValue _DBOutValue = new DBOutValue();
            DBInValue _DBInValue = JMDBOConfig.getSQLDefaultInKey();
            StringBuilder sql = new StringBuilder();
            sql.append(" SELECT ");
            sql.append("   SM000400.GroupID AS " + JMNode.NODE_CODE);
            sql.append(" , SM000400.NameSimple AS " + JMNode.NODE_NAME);
            sql.append(" , '" + JMNode.NODE_PATH_ROOT + "' AS " + JMNode.NODE_PATH);
            sql.append(" , SM000400.GroupID AS " + JMNode.NODE_VALUE);
            sql.append(" , '' AS " + JMNode.NODE_RESERVE02);
            sql.append(" FROM ");
            sql.append(" SM000400 ");

            sql.append(" UNION ");

            sql.append(" SELECT ");
            sql.append("   SC000300.UserID AS " + JMNode.NODE_CODE);
            sql.append(" , MS020000.UserName AS " + JMNode.NODE_NAME);
            sql.append(" , SC000400.GroupID AS " + JMNode.NODE_PATH);
            sql.append(" , SC000300.LoginID AS " + JMNode.NODE_VALUE);
            sql.append(" , MS020000.Sex AS " + JMNode.NODE_RESERVE02);
            sql.append(" FROM ");
            sql.append(" SC000300,MS020000,SC000400 ");
            sql.append(" WHERE ");
            sql.append(" SC000300.UserID = MS020000.UserID  ");
            sql.append(" AND ");
            sql.append(" SC000300.UserID = SC000400.LineID ");

            sql.append(" ORDER BY " + JMNode.NODE_PATH);
//JMNode.NODE_PATH       路径
//JMNode.NODE_CODE       组
//JMNode.NODE_NAME       名称
//JMNode.NODE_VALUE      个人编号
//JMNode.NODE_RESERVE01  IP
//JMNode.NODE_RESERVE02  性别
//JMNode.NODE_RESERVE03  签名
            _DBInValue.setSQLID(sql.toString());
            _DBOutValue.executeSelect(_DBInValue);

            dataSource = _DBOutValue.getResultData();
        } catch (Exception exception) {
            return false;
        }
        return true;
    }

    public boolean init (String asAppId, String asInitOption) {
        try {
            peopleTree = new SimpleTree(name, dataSource);

            SY01030A peopleJMTreeRender = new SY01030A();
            RightMenu = new SY02000B(this);
//            PeopleLook_.setBackground(Color.decode("#3169C6"));
//            PeopleLook_.setForeground(Color.white);
            PeopleLook_.addMouseListener(new java.awt.event.MouseAdapter() {
                public void mousePressed (MouseEvent e) {
                    doShowPeople(e);
                }
            });

            peopleTree.setCellRenderer(peopleJMTreeRender);
            peopleTree.getTree().showAngledLine(false);
            peopleTree.getTree().getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
            peopleTree.getTree().addMouseListener(new MouseAdapter() {
                public void mouseClicked (MouseEvent e) {
                    int selRow = peopleTree.getTree().getRowForLocation(e.getX(), e.getY());
                    if (selRow != -1) {
                        peopleTree.getTree().setSelectionPath(peopleTree.getTree().getPathForLocation(e.getX(), e.getY()));
                    }

                    onMouseClicked(e);
                }
            });
//            peopleTree.getTree().addMouseMotionListener(new MouseMotionAdapter() {
//                public void mouseMoved (MouseEvent e) {
//                    int selRow = peopleTree.getTree().getRowForLocation(e.getX(), e.getY());
//                    if (selRow != -1) {
//                       TreePath path = (peopleTree.getTree().getPathForLocation(e.getX(), e.getY()));
//                       JMTreeNode treeNode = (JMTreeNode)path.getLastPathComponent();
//                    }
//                }
//            });
            //peopleTree.getTree().setRootVisible(false);
            peopleTree.getTree().expandRow(0);
            this.setLayout(new BorderLayout());
            this.add(peopleTree, 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 + -