Перетаскивание не может упасть в моем слое Java

У меня проблема с моим ярлыком, когда я его перетаскиваю. Я использую jlayerpane. Мой лейбл не хотел попадать в мой слой. Это мой код. Я не прав с этим кодом?

ошибка предварительного просмотра

Это моя глобальная переменная

Cursor draggingCursor = Cursor.getPredefinedCursor(Cursor.HAND_CURSOR);
Point anchorPoint;
private int xOffset;
private int yOffset;
private JLabel draggy;
private String oldText;

И это моя мышь jlabel.event выпущена

 private void jLabel1MouseReleased(java.awt.event.MouseEvent evt) {                                      
    if (draggy != null) {
            draggy.setText(oldText);
            draggy.setSize(draggy.getPreferredSize());
            draggy = null;
        }
    draggy.setLocation(evt.getX() - xOffset, evt.getY() - yOffset);
}          

и это мое событие с мышкой

private void jLabel1MousePressed(java.awt.event.MouseEvent evt) {                                     
    JComponent comp = (JComponent) evt.getComponent();
        Component child = comp.findComponentAt(evt.getPoint());
        if (child instanceof JLabel) {
            xOffset = evt.getX() - child.getX();
            yOffset = evt.getY() - child.getY();

            draggy = (JLabel) child;
            oldText = draggy.getText();
            draggy.setText("What a drag");
            draggy.setSize(draggy.getPreferredSize());
        }
}

и это когда моя мышь тащила

private void jLabel1MouseDragged(java.awt.event.MouseEvent evt) {                                     
    if (draggy != null) {
            draggy.setLocation(evt.getX() - xOffset, evt.getY() - yOffset);
        }
}

0 ответов

Другие вопросы по тегам