ich wollte mal Anfangen so ein kleines Spiel zu programmieren, und stoze direkt auf eine Hürde .
Ich will das ich ein Button verschieben kann mit der Maus wenn ich sie gedrückt halte. D.h das wenn ich die linke Maus Taste drücke der Button an der Stelle der Maus ist, und sich auch mit verschiebt wenn ich die maus Bewege.
Mein Quelltext aus Eclipse sieht grade so aus :
Quote:
public class Spiel extends JFrame implements MouseMotionListener
{
JButton knopp;
private int startX,startY;
public Spiel()
{
super("DasSpiel");
this.setLayout(null);
knopp = new JButton ("Knopf");
knopp.setBounds(0,0,100,100);
knopp.addMouseMotionListener(this);
this.add(knopp);
this.setBounds(0,0,1000,1000);
this.setVisible(true);
}
public static void main(String[] args)
{
Spiel test = new Spiel();
}
public void mouseDragged(MouseEvent e) {
startX = e.getX();
startY = e.getY();
knopp.setBounds(startX, startY, 100, 100);
}
public void mouseMoved(MouseEvent e) {
}
}
Wenn ich die Maustaste Drücke und sie bewege geht der Button zwar mit, aber nicht an der Stelle der Maus und der Button geht immer wieder nach oben Links.
Kann einer helfen ?
Du musst dem JFrame den Listener zuteilen und nicht dem Button.
Dann kannst du dem Button einfach einen MouseListener geben und gucken ob der User den Button draggen möchte, dazu kannst du z.B einfach wenn gedrückt einen boolean auf true setzen.
Ja ich drücke ihn ja - aber es geht nur wenn ich auf den Knopf drücke, geht es irgendwie auch das wenn ich einfach nur im JFrame linksklick klicke das der Button dort hingeht ? Soweit habe kann ich ihn verschieben ohne das er wieder nach oben links geht, aber er "verdoppelt" sich noch.
Wenn du den Button mit einem Klick platzieren willst, musst du doch einfach nur dem Frame einen MouseListener geben und in der mouseClicked oder mousePressed Methode den Button auf die Mausposition setzen. Wo is denn dein Problem? Die Drag Variante die ich gepostet habe, funktioniert bei mir einwandfrei.
[B] Push Button [S] 10 e*gold/Button; 25 e*g/psd+Button 09/20/2013 - elite*gold Trading - 4 Replies Moin,
Hier könnt ihr folgenden Push Button kaufen:
http://i.epvpimg.com/YlrYe.jpg
Pro Button wären das 10e*g, pro Button mit .psd dazu 25e*g.
Wenn ihr einen Button kaufen wollt, schreibt mir eine PN, damit ich den Namen ändern kann, alles hochladen kann und euch dann per Treasure schicken kann. ;)
Schrift kann auch geändert werden. Dazu einfach in der PN schreiben, welche Schrift ihr haben wollt^^
[Java] Konflikt zwischen Label verschieben und setText() [Schulprojekt] 07/08/2011 - General Coding - 14 Replies Hallo zusammen,
da mir mit diesem Projekt bei einer anderen Frage bereits gut weitergeholfen wurde möchte ich nochmal eine Frage stellen, aber zunächst nochmal die gesamtsituation:
Wir bauen mit Java das Brettspiel "Mensch ärgere dich nicht" nach und nutzen dafür die Netbeans IDE. Die Spielfiguren werden durch Labels, die ein Icon beinhalten dargestellt. Jetzt müssen diese Label natürlich verschoben werden, was auch kein Problem an sich darstellt. Das Problem besteht darin, dass man zwar...