显示正在拖动java的组件

时间:2012-11-10 15:25:06

标签: java swing drag-and-drop

我为我的jlabels拖放工作,但我想显示拖动的实际标签。所以当我们被拖动时,我不希望普通的手在它下面有一个正方形。所以它应该从它的起始位置消失,并按照鼠标。我尝试设置位置,但它不起作用,鼠标仍显示常用图标。我可以让它从起始位置消失但不会完全移动。

如果我使用分层窗格在顶部制作另一个窗格并在那里设置标签的位置,它会起作用吗?

private class DragMouseAdapter extends MouseAdapter
    {
        public void mousePressed(MouseEvent e)
        {
            JComponent c = (JComponent)e.getSource();
            TransferHandler handler = c.getTransferHandler();
            c.setLocation(MouseInfo.getPointerInfo().getLocation().x, MouseInfo.getPointerInfo().getLocation().x);
            //c.setOpaque(true);
            handler.exportAsDrag(c, e, TransferHandler.COPY);

        }


    }

1 个答案:

答案 0 :(得分:2)

我会花一些时间看看Timothy Wall的The Rabbit Hole's博客,特别是thisthis以及thisthis以及{{3} }和this以及thisthis

PS - 我本来是一个评论,但它很长:P