一个Jpanel放在JscrollPane里面,
用鼠标拖动Jpanel,改变JPanel位置,怎么做啊!!我改变JScrollPane滚动条的位置,可是效果不好,
能不能直接改变JPanel的位置,来实现拖动??

解决方案 »

  1.   

    就像拖动Google地图那样的效果
      

  2.   

    那你再鼠标事件里面获得JPanel这个控件对象,通过鼠标MouseDrag()这个事件来让
    JPanel跟着拖动,当MouseReless()释放的时候 已经确定了位置吧,
    然后在把JPanel设置到这个位置 就可以了。
      

  3.   

    我觉得,JPanel一放到JScroll里就拉伸了吧,怎么能移动呢
    不清楚楼主想做什么,不过如果是移动Frame里面的窗体的话,你可以试试JInternalFrame,一个窗体内集成多个子窗体
    以下是相关代码
      private void jbInit() throws Exception {
        contentPane = (JPanel) getContentPane();
        JDesktopPane desktopPane = new JDesktopPane();
        contentPane.add(desktopPane);
        JInternalFrame internalFrame = new JInternalFrame(
            "InternalFrame ", true, true, true, true);
        internalFrame.setLocation(20, 20);
        internalFrame.setSize(200, 200);
        internalFrame.setVisible(true);    desktopPane.add(internalFrame);
        setSize(new Dimension(400, 300));
        setTitle("Frame Title");
      }