Moin,
ich habe gerade mal ein wenig mit MouseMotionListenern rumgespielt und dachte mir dann, dass ich einfach mal ein JPanel auf einem JFrame herziehe und somit dessen Position verändere. Klappt allerdings nur so halb... Immer wenn ich das Panel ziehe, verändert es zwar seine Position, allerdings "flackert es die ganze Zeit und springt hin und her, wenn ich die Maus bewege. Steht der Mauszeiger still, hört das Springen meistens auf. Woran kann das liegen? Um mein Problem ein wenig deutlicher zu machen, geb ich euch hier mal meinen Code:
Für Hilfe wäre ich sehr dankbar )
Beste Grüße aus Hamburg
ich habe gerade mal ein wenig mit MouseMotionListenern rumgespielt und dachte mir dann, dass ich einfach mal ein JPanel auf einem JFrame herziehe und somit dessen Position verändere. Klappt allerdings nur so halb... Immer wenn ich das Panel ziehe, verändert es zwar seine Position, allerdings "flackert es die ganze Zeit und springt hin und her, wenn ich die Maus bewege. Steht der Mauszeiger still, hört das Springen meistens auf. Woran kann das liegen? Um mein Problem ein wenig deutlicher zu machen, geb ich euch hier mal meinen Code:
Code:
import java.awt.Color;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.Border;
public class DragDrop extends JFrame{
JPanel pnlTest = new JPanel();
Border border = BorderFactory.createLineBorder(Color.black);
public static void main(String [] args){
DragDrop frame1 = new DragDrop();
frame1.initialize();
}
public void initialize(){
setLayout(null);
setBounds(10,10,800,600);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setExtendedState(JFrame.MAXIMIZED_BOTH);
setUndecorated(true);
setVisible(true);
add(pnlTest);
}
public DragDrop(){
pnlTest.setBounds(0, 0, 200, 120);
pnlTest.setBorder(border);
pnlTest.addMouseMotionListener(new MouseMotionListener(){
public void mouseDragged(MouseEvent e) {
pnlTest.setBounds(e.getX()+100, e.getY()+60, 200, 120);
}
public void mouseMoved(MouseEvent arg0) {}
});
}
}
Für Hilfe wäre ich sehr dankbar )
Beste Grüße aus Hamburg