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

📄 multiimageborder.java

📁 java+eclipse做的TTPlayer
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    }    /**     * 得到应该吸附到的窗口     * @return     */    public void getSnapObject() {        me.getBounds(myBound);        //先查询EQ的窗口        Component c1 = config.getEqWindow();        if (c1 != null && c1 != me && c1.isShowing()) {            c1.getBounds(otherBound);            int dis = Util.getDistance(myBound, otherBound);            if (dis > 0 && dis < Config.SNAP) {                int dir = getDirection(dis);                if (dir != -1) {                    SnapObject obj = new SnapObject(dir, c1);                    changeLocation(obj);//                    return obj;                } else {                    config.getComponentMap().remove(config.getComponentName(me));                }            } else {                config.getComponentMap().remove(config.getComponentName(me));            }        }        me.getBounds(myBound);        c1 = config.getLrcWindow();        if (c1 != null && c1 != me && c1.isShowing()) {            c1.getBounds(otherBound);            int dis = Util.getDistance(myBound, otherBound);            if (dis > 0 && dis < Config.SNAP) {                int dir = getDirection(dis);                if (dir != -1) {                    SnapObject obj = new SnapObject(dir, c1);                    changeLocation(obj);//                    return obj;                } else {                    config.getComponentMap().remove(config.getComponentName(me));                }            } else {                config.getComponentMap().remove(config.getComponentName(me));            }        }        me.getBounds(myBound);        c1 = config.getPlWindow();        if (c1 != null && c1 != me && c1.isShowing()) {            c1.getBounds(otherBound);            int dis = Util.getDistance(myBound, otherBound);            if (dis > 0 && dis < Config.SNAP) {                int dir = getDirection(dis);                if (dir != -1) {                    SnapObject obj = new SnapObject(dir, c1);                    changeLocation(obj);//                    return obj;                } else {                    config.getComponentMap().remove(config.getComponentName(me));                }            } else {                config.getComponentMap().remove(config.getComponentName(me));            }        }        me.getBounds(myBound);        c1 = config.getTopParent();        if (c1 != null && c1 != me && c1.isShowing()) {            c1.getBounds(otherBound);            int dis = Util.getDistance(myBound, otherBound);            if (dis > 0 && dis < Config.SNAP) {                int dir = getDirection(dis);                if (dir != -1) {                    SnapObject obj = new SnapObject(dir, c1);                    changeLocation(obj);//                    return obj;                } else {                    config.getComponentMap().remove(config.getComponentName(me));                }            } else {                config.getComponentMap().remove(config.getComponentName(me));            }        }//        return null;    }    public void mouseReleased(MouseEvent e) {        isMoving = false;        if (state == MOVE) {            //如果是主窗口就免了            if (me == config.getTopParent()) {                return;            }            getSnapObject();            config.updateComponentSnap();        }    }    public void mouseEntered(MouseEvent e) {        if (!isMoving) {            calculateState(e.getPoint());        }    }    public void mouseExited(MouseEvent e) {        if (!isMoving) {            state = 0;        }    }    public void mouseDragged(MouseEvent e) {        Point p = e.getPoint();        switch (state) {            case MOVE:                doMOVE(p);                break;            case LEFT:                doLEFT(p);                break;            case RIGHT:                doRIGHT(p);                break;            case TOP:                doTOP(p);                break;            case BOTTOM:                doBOTTOM(p);                break;            case LEFT_TOP:                doLEFT_TOP(p);                break;            case LEFT_BOTTOM:                doLEFT_BOTTOM(p);                break;            case RIGHT_TOP:                doRIGHT_TOP(p);                break;            case RIGHT_BOTTOM:                doRIGHT_BOTTOM(p);                break;        }    }    public void mouseMoved(MouseEvent e) {        calculateState(e.getPoint());    }    private void doMOVE(Point p) {        int addX = p.x - startX;        int addY = p.y - startY;        Point old = me.getLocation();        me.setLocation(old.x + addX, old.y + addY);    }    private void doLEFT(Point p) {        int addX = startX - p.x;        Point old = me.getLocation();        Dimension oldSize = me.getSize();        if (me.getWidth() <= me.getMinimumSize().width && addX < 0) {            addX = 0;        }        me.setSize(oldSize.width + addX, oldSize.height);        me.setLocation(old.x - addX, old.y);    }    private void doRIGHT(Point p) {        int addX = p.x - startX;        Dimension oldSize = me.getSize();        if (me.getWidth() <= me.getMinimumSize().width && addX < 0) {            addX = 0;        } else {            startX = p.x;        }        me.setSize(oldSize.width + addX, oldSize.height);        startY = p.y;    }    private void doTOP(Point p) {        int addY = startY - p.y;        Dimension oldSize = me.getSize();        Point old = me.getLocation();        if (me.getHeight() <= me.getMinimumSize().height && addY < 0) {            addY = 0;        }        me.setSize(oldSize.width, oldSize.height + addY);        me.setLocation(old.x, old.y - addY);    }    private void doBOTTOM(Point p) {        int addY = p.y - startY;        Dimension oldSize = me.getSize();        if (me.getHeight() <= me.getMinimumSize().height && addY < 0) {            addY = 0;        } else {            startY = p.y;        }        me.setSize(oldSize.width, oldSize.height + addY);        startX = p.x;    }    private void doLEFT_TOP(Point p) {        int addX = startX - p.x;        int addY = startY - p.y;        Dimension oldSize = me.getSize();        Point old = me.getLocation();        if (me.getWidth() <= me.getMinimumSize().width && addX < 0) {            addX = 0;        }        if (me.getHeight() <= me.getMinimumSize().height && addY < 0) {            addY = 0;        }        me.setSize(oldSize.width + addX, oldSize.height + addY);        me.setLocation(old.x - addX, old.y - addY);    }    private void doLEFT_BOTTOM(Point p) {        int addX = startX - p.x;        int addY = p.y - startY;        Dimension oldSize = me.getSize();        Point old = me.getLocation();        if (me.getWidth() <= me.getMinimumSize().width && addX < 0) {            addX = 0;        }        if (me.getHeight() <= me.getMinimumSize().height && addY < 0) {            addY = 0;        } else {            startY = p.y;        }        me.setSize(oldSize.width + addX, oldSize.height + addY);        me.setLocation(old.x - addX, old.y);    }    private void doRIGHT_TOP(Point p) {        int addX = p.x - startX;        int addY = startY - p.y;        Dimension oldSize = me.getSize();        Point old = me.getLocation();        if (me.getWidth() <= me.getMinimumSize().width && addX < 0) {            addX = 0;        } else {            startX = p.x;        }        if (me.getHeight() <= me.getMinimumSize().height && addY < 0) {            addY = 0;        }        me.setSize(oldSize.width + addX, oldSize.height + addY);        me.setLocation(old.x, old.y - addY);    }    private void doRIGHT_BOTTOM(Point p) {        int addX = p.x - startX;        int addY = p.y - startY;        Dimension oldSize = me.getSize();        if (me.getWidth() <= me.getMinimumSize().width && addX < 0) {            addX = 0;        } else {            startX = p.x;        }        if (me.getHeight() <= me.getMinimumSize().height && addY < 0) {            addY = 0;        } else {            startY = p.y;        }        me.setSize(oldSize.width + addX, oldSize.height + addY);    }}

⌨️ 快捷键说明

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