拖拽与JLabel一起下降

时间:2009-11-26 16:52:08

标签: java swing

我可以拖动JLabel并将自定义对象插入其中,还是应该使用其他组件?但我必须将TransferHandlerexportAsDrag一起使用。

我的代码:

final JLabel label1 = new JLabel("Drag here");
Collection<Person> person= new ArrayList<Person>();

//Register transferhandler objects on them label1 transfer itss
//foreground coloer label2 transfer its backgroundcolor

//need here a Transferable to put the object
label1.setTransferHandler(new TransferHandler(....));

label1.addMouseMotionListener(new MouseMotionAdapter() {
    @Override
    public void mouseDragged(MouseEvent e) {
        // TODO Auto-generated method stub
        TransferHandler handler = label1.getTransferHandler();
        handler.exportAsDrag(label1, e, TransferHandler.COPY);
    }
});

1 个答案:

答案 0 :(得分:2)

取决于您要拖动的内容 - JLabel或只是文字。

当您拖动某物时,您创建了拖动物体的“模型”,当您放下它时,通常会根据该模型在目的地创建新物品。