e742. 加入标签的可拖动能力

This example demonstrates how to modify a label component so that its text can be dragged and dropped to another component.

    // Create a label
    JLabel label = new JLabel("Label Text");
    
    // Specify that the label's text property be transferable; the value of
    // this property will be used in any drag-and-drop involving this label
    final String propertyName = "text";
    label.setTransferHandler(new TransferHandler(propertyName));
    
    // Listen for mouse clicks
    label.addMouseListener(new MouseAdapter() {
        public void mousePressed(MouseEvent evt) {
            JComponent comp = (JComponent)evt.getSource();
            TransferHandler th = comp.getTransferHandler();
    
            // Start the drag operation
            th.exportAsDrag(comp, evt, TransferHandler.COPY);
        }
    });

 

Related Examples
posted @ 2018-09-06 08:41  borter  阅读(159)  评论(0编辑  收藏  举报