我做了个自己的窗体,标题栏、最小化、最大化、关闭按钮都是做的,这些都放在一个panel里,标题栏是一个jlabel,现在要实现窗体拖动功能,我给jlabel添加了鼠标事件想通过拖动jlabel使窗体(jframe)移动,现在存在的问题是窗体移动时位置不对,像是后边有影子似的,并且标题栏离鼠标的距离也较远,哪位做过的朋友能否提供一下实现的例子,谢谢!

解决方案 »

  1.   

    public void lblbeijing_mousePressed(MouseEvent e) {
            thex = e.getX();//鼠标第一次按下位置
            they = e.getY();   
        }    public void lblbeijing_mouseDragged(MouseEvent e) {
            int x = this.getX() + e.getX() - thex;//e.getX()是鼠标当前位置,e.getX() - thex是挪动距离
            int y = this.getY() + e.getY() - they;//this.getY()窗体的位置
     
            this.setLocation(x, y);//窗体摆放
        }
      

  2.   

    针对jlabel拖动我会,现在问题是怎么使拖标签时窗体动