Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Java
You last visited: Today at 23:55

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Help] Java Button verschieben

Discussion on [Help] Java Button verschieben within the Java forum part of the Coders Den category.

Reply
 
Old   #1
 
|Epic|FaiL|'s Avatar
 
elite*gold: 57
Join Date: Feb 2011
Posts: 1,287
Received Thanks: 211
[Help] Java Button verschieben

Hey Leute,

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 ?
|Epic|FaiL| is offline  
Old 06/15/2014, 19:04   #2
 
xXKonaXx's Avatar
 
elite*gold: 20
Join Date: Nov 2010
Posts: 552
Received Thanks: 350
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.
xXKonaXx is offline  
Thanks
1 User
Old 06/15/2014, 19:13   #3
 
|Epic|FaiL|'s Avatar
 
elite*gold: 57
Join Date: Feb 2011
Posts: 1,287
Received Thanks: 211
Meinst du
Quote:
JFrame.addMouseMotionListener(this);
? Weil das geht nicht . Und warum bewegt sich der Button nur wenn ich auf ihn klicke und dann die Mausbewege ?
|Epic|FaiL| is offline  
Old 06/15/2014, 19:20   #4
 
xXKonaXx's Avatar
 
elite*gold: 20
Join Date: Nov 2010
Posts: 552
Received Thanks: 350
Das Drag Event tritt nur ein, wenn du die Maus gedrückt hältst und sie bewegst.
Eine andere Möglichkeit wäre diese:

Du kontrollierst ob die Maus noch im Button drinne is, ansonsten setzt du die Position nicht neu. Dann braucht der Button aber wieder den Listener.
xXKonaXx is offline  
Thanks
1 User
Old 06/15/2014, 19:40   #5
 
|Epic|FaiL|'s Avatar
 
elite*gold: 57
Join Date: Feb 2011
Posts: 1,287
Received Thanks: 211
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.
|Epic|FaiL| is offline  
Old 06/15/2014, 19:48   #6
 
xXKonaXx's Avatar
 
elite*gold: 20
Join Date: Nov 2010
Posts: 552
Received Thanks: 350
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.
xXKonaXx is offline  
Thanks
1 User
Old 06/15/2014, 19:58   #7
 
|Epic|FaiL|'s Avatar
 
elite*gold: 57
Join Date: Feb 2011
Posts: 1,287
Received Thanks: 211
Okey ich habs danke dir .
|Epic|FaiL| is offline  
Reply


Similar Threads Similar Threads
[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...



All times are GMT +1. The time now is 23:56.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.