JButtons innerhalb eines JPanels verschieben (DRAG&DROP)

kiCk_mAsTer

Mitglied
Hallo Community,

ich habe ein kleines Problem und hoffe ihr könnt mir helfen.
Auf der ContentPane liegt ein JPanel, indem sich mehrere Buttons befinden, die zur laufzeit erzeugt werden. Ich möchte nun, dass es möglich ist, für den Anwender des Programms, die Position der erzeugten Button via "Drag&Drop" zu verändern. (Benutzer klickt auf einen bestimmten Button und kann ihn durch zeihen an die gewünschte Position bewegen)

Wäre sehr nett wenn sich jemand kurz die zeit nehmen könnte um mir zu helfen bzw. einen kleinen Code teil, wie es funktionieren könnte bereitstellen könnte. DANKE:)
 

kiCk_mAsTer

Mitglied
ich hab jetzt einfach mal etwas versucht. jedoch bugged das wie sau. Vielleicht sieht jemand den Fehler, bei dem was ich gerade probiert habe, falls nicht sind denoch Möglichkeiten, wie ich das verschieben umsetzten kann, erwünscht.

Java:
...
JButton tb=new JButton(buttonName);
                                 tb.addMouseMotionListener(new MyButtonMotionListener());
                                 tb.setFont(buttonFont);
                                 tb.setForeground(buttonColor);
                                 tb.setBounds(buttonKordY,buttonKordX,buttonWidth,buttonHeight);
...

Java:
 class MyButtonMotionListener implements MouseMotionListener {
        @Override
        public void mouseDragged(MouseEvent e) {
            if(e.getComponent() instanceof JButton){
                System.out.println(e.getX()+" X "+e.getY());
                e.getComponent().setBounds(e.getX(), e.getY(), e.getComponent().getHeight(), e.getComponent().getWidth());
            }
        }
        @Override
        public void mouseMoved(MouseEvent e) {

        }

    }

Wenn ich nun versuchen den Button zu verschieben befindet sich der meistens dann an einer anderen Position wieder. :(
Bitte um hilfe
 

kiCk_mAsTer

Mitglied
hab jetzt das Problem lösen können.

Java:
class MyButtonMotionListener implements MouseMotionListener {
        @Override
        public void mouseDragged(MouseEvent e) {
            if(e.getComponent() instanceof JButton){
                System.out.println(e.getX()+" X "+e.getY());
                e.translatePoint(e.getComponent().getX(), e.getComponent().getY());
e.getComponent().setLocation(e.getX(), e.getY()); 
            }
        }
        @Override
        public void mouseMoved(MouseEvent e) {

        }

    }

die koordinaten müssen transformiert werden.

Denoch DANKE :)
 

tuttle64

Bekanntes Mitglied
Der Vollständigkeit halber:

Code:
import javax.swing.JButton;
import javax.swing.JFrame;

public class DragExample extends JFrame {
	public DragExample() {
		this.setLayout(null);
		JButton tb=new JButton("Drag&DropMe");
        tb.addMouseMotionListener(new MyButtonMotionListener());
        tb.setBounds(10,20,130,50);
        this.getContentPane().add(tb);
	}
	
	public static void main(String[] args) {
		JFrame frame = new DragExample();
		frame.setBounds(100, 100, 500, 500);
		frame.setVisible(true);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
}

Zudem solltest Du sicherstellen, dass die Maus mit dem Button nicht ausserhalb des Frames bewegt werden kann, ansonsten ist der Button beim Loslassen nicht mehr sichtbar.
 
Zuletzt bearbeitet:

tricky00

Neues Mitglied
Hallo Community,

ich habe ein kleines Problem und hoffe ihr könnt mir helfen.
Ich würde gerne ein Button erstellen der folgendes machen soll.
In meinem admin Bereich würde ich gerne zwei Button erstellen, einer soll die Farbe grün haben und der andere rot.
In meinem Userbereich möchte ich einen Button haben der gelb ist.
Es soll nun so sein, wenn ich im Admin bereich auf den grünen Button drücke soll der Button im userbereich im selben Augenblick sich in grün ändern und genau das gleiche mit dem roten. wie kann ich dass machen?
 

tuttle64

Bekanntes Mitglied
Hallo Community,

ich habe ein kleines Problem und hoffe ihr könnt mir helfen.
Ich würde gerne ein Button erstellen der folgendes machen soll.
In meinem admin Bereich würde ich gerne zwei Button erstellen, einer soll die Farbe grün haben und der andere rot.
In meinem Userbereich möchte ich einen Button haben der gelb ist.
Es soll nun so sein, wenn ich im Admin bereich auf den grünen Button drücke soll der Button im userbereich im selben Augenblick sich in grün ändern und genau das gleiche mit dem roten. wie kann ich dass machen?


Was meinst Du mit "Bereich"? Vorschlag: Erstelle im gleichen Frame zwei JTabbedPanes, eines mit dem Namen Admin und der andere mit dem Namen User. Für weitere Details siehe How to Use Tabbed Panes (The Java™ Tutorials > Creating a GUI With JFC/Swing > Using Swing Components)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Hintergrundfrabe eines JButtons innerhalb eines JToolBar AWT, Swing, JavaFX & SWT 4
jojoge wie kann ich in eine Benennung eines JButtons eine Variable einbauen? AWT, Swing, JavaFX & SWT 6
G JPanel per Drag and Drop JButtons und Bilder ablegen AWT, Swing, JavaFX & SWT 1
G JPanel mit JButtons und Bilder AWT, Swing, JavaFX & SWT 5
schoel27 Mehrere JButtons sollen das gleiche Event auslösen AWT, Swing, JavaFX & SWT 2
H Auswahlmenü mit JButtons AWT, Swing, JavaFX & SWT 4
H JButtons werden nicht angezeigt AWT, Swing, JavaFX & SWT 5
A Swing Meine JButtons werden nicht angezeigt bitte helft mir AWT, Swing, JavaFX & SWT 2
N "Automatisches" erstellen von jButtons AWT, Swing, JavaFX & SWT 1
F JButtons neu laden AWT, Swing, JavaFX & SWT 4
N Swing JButtons werden nach repaint() doppelt dargestellt AWT, Swing, JavaFX & SWT 12
A Swing Probleme mit dem adden von JButtons zur JScrollPane AWT, Swing, JavaFX & SWT 2
S JButtons an Koordinaten setzen AWT, Swing, JavaFX & SWT 3
A JScrollPane soll JPanel mit JButtons enthalten und eine Scollbar anzeigen AWT, Swing, JavaFX & SWT 1
Java_RY wie kann ich auf JButtons in einem JPanel zugreifen AWT, Swing, JavaFX & SWT 3
M Swing Selbstanordnende JButtons AWT, Swing, JavaFX & SWT 4
J EventHandler Bei JButtons AWT, Swing, JavaFX & SWT 2
L Swing Variable Anzahl an JButtons AWT, Swing, JavaFX & SWT 7
L Array mit JButton, wie rausfinden auf welche JButton geklickt wurde + index des JButtons ausgeben AWT, Swing, JavaFX & SWT 4
A JTextField und JButtons AWT, Swing, JavaFX & SWT 2
F JButtons erstellen lassen mit unterschiedlichen Funktionen AWT, Swing, JavaFX & SWT 3
M JLabel über JButtons zeichnen AWT, Swing, JavaFX & SWT 4
Kenan89 LayoutManager JPanel wächst beim adden neuer JButtons nicht mit AWT, Swing, JavaFX & SWT 4
A JButtons - es wird beim falschen Button die Hintergrundfarbe angepasst AWT, Swing, JavaFX & SWT 2
Z kleine JButtons und ihre Beschriftung AWT, Swing, JavaFX & SWT 5
K Swing Abgerundete JButtons AWT, Swing, JavaFX & SWT 8
Tsuna JButtons in Apple-Design AWT, Swing, JavaFX & SWT 4
J JButtons in aktivieren und deaktivieren AWT, Swing, JavaFX & SWT 3
T JButtons indexiert unter NetBeans anlegen AWT, Swing, JavaFX & SWT 7
H JButtons in JTable anzeigen AWT, Swing, JavaFX & SWT 5
T Maximale Länge eines JButtons AWT, Swing, JavaFX & SWT 5
R Swing Verschieben eines jButtons mittels MouseDragged AWT, Swing, JavaFX & SWT 4
K Runde JButtons ? AWT, Swing, JavaFX & SWT 7
B Swing JButtons in eine Arraylist<JButton> einfügen AWT, Swing, JavaFX & SWT 2
G Swing JButtons + ActionListener + final AWT, Swing, JavaFX & SWT 3
U Problem mit JButtons AWT, Swing, JavaFX & SWT 6
C Interface für JButtons,... AWT, Swing, JavaFX & SWT 7
J Swing JButtons und die ActionEvents AWT, Swing, JavaFX & SWT 2
P JButtons haben nicht immer lust zu erscheinen AWT, Swing, JavaFX & SWT 9
U Grafikkontext unter JButtons? AWT, Swing, JavaFX & SWT 5
Strahlungsleck Funktionalität von JButtons (Actionlistener etc.) AWT, Swing, JavaFX & SWT 17
G Sehr kleine JButtons mit Icon oder Beschriftung AWT, Swing, JavaFX & SWT 2
F Sender für jButtons? AWT, Swing, JavaFX & SWT 2
M ich will die alten "alte JButtons"wieder haben AWT, Swing, JavaFX & SWT 6
J JButtons in Tabellenspalten anzeigen AWT, Swing, JavaFX & SWT 2
J JScrollBar scroll-Verhalten auf 2 JButtons umleiten? AWT, Swing, JavaFX & SWT 2
N Minesweeper: 2D Feld von JButtons anlegen AWT, Swing, JavaFX & SWT 19
F Wie Oberfläche verbessern? (JButtons, Textfeld verkleinern) AWT, Swing, JavaFX & SWT 5
U Bilder, JLabels, JButtons voreinander AWT, Swing, JavaFX & SWT 7
D Darstellungsprobleme bei JButtons auf JInternalFrames AWT, Swing, JavaFX & SWT 4
T Ausrichtung eines Jbuttons AWT, Swing, JavaFX & SWT 6
S JButtons Größe AWT, Swing, JavaFX & SWT 15
M JButtons immer gleiche Größe? AWT, Swing, JavaFX & SWT 8
H Unsichtbare JButtons? AWT, Swing, JavaFX & SWT 5
C JComboBox mit JButtons befüllen AWT, Swing, JavaFX & SWT 8
1 Warum sind JButtons viel breiter als der enthaltene Text ? AWT, Swing, JavaFX & SWT 4
S Text eines JButtons vertikal schreiben AWT, Swing, JavaFX & SWT 5
L-ectron-X Den Text eines JButtons unter das Icon setzen? AWT, Swing, JavaFX & SWT 2
M JButtons in JScrollPanel darstellen AWT, Swing, JavaFX & SWT 6
S JButtons in einem JPanel erscheinen nicht direkt AWT, Swing, JavaFX & SWT 7
G von JButtons erben, aber richtig! AWT, Swing, JavaFX & SWT 4
R JButtons werden nicht dargestellt AWT, Swing, JavaFX & SWT 7
G JButtons AWT, Swing, JavaFX & SWT 7
Z Problem mit Spielfläche aus JButtons AWT, Swing, JavaFX & SWT 2
H große mengen an jbuttons dynamisch erzeugen? AWT, Swing, JavaFX & SWT 15
G Icon eines JButtons ändern? AWT, Swing, JavaFX & SWT 7
M JButtons mit Linie verbinden AWT, Swing, JavaFX & SWT 4
ralfb1105 JavaFX HTTP Download task im Hintergrund innerhalb GUI AWT, Swing, JavaFX & SWT 70
ralfb1105 JavaFX Label lässt sich innerhalb service Task nicht updaten? AWT, Swing, JavaFX & SWT 22
W Swing JTable Zeilenumbruch innerhalb einer Zelle AWT, Swing, JavaFX & SWT 3
J JavaFX Rectangle innerhalb eines Rectangle oder Panes positionieren? AWT, Swing, JavaFX & SWT 1
D TAB Taste innerhalb eines JSpinner AWT, Swing, JavaFX & SWT 2
M PDF einlesen und innerhalb Pane anzeigen AWT, Swing, JavaFX & SWT 5
M Swing JPanel innerhalb eines Frames verschieben AWT, Swing, JavaFX & SWT 3
R Swing Bewegung eines Graphics Objektes innerhalb eines JPanels funktioniert nicht richtig AWT, Swing, JavaFX & SWT 2
A Swing Textübergabe innerhalb der Anwendung in unterschiedlichen Fenster AWT, Swing, JavaFX & SWT 8
M Java FX Innerhalb einem FXML-Dialog weiteren FXML-Dialog einblenden AWT, Swing, JavaFX & SWT 3
C JTable Drag and Drop von Zeilen innerhalb einer Table AWT, Swing, JavaFX & SWT 2
U Bild innerhalb hatml code anzeigen AWT, Swing, JavaFX & SWT 5
M Mehrere Fenster innerhalb einer Application AWT, Swing, JavaFX & SWT 3
L Swing Component alignment innerhalb einer JList AWT, Swing, JavaFX & SWT 3
R JTextField Eingabefeld innerhalb verschieben AWT, Swing, JavaFX & SWT 2
P setStroke komplett innerhalb eines Rectangles AWT, Swing, JavaFX & SWT 4
D JDialog alwaysOnTop, aber nur innerhalb der Applikation AWT, Swing, JavaFX & SWT 3
D Bestimmtes JPanel innerhalb eines JTabbedPane ansprechen AWT, Swing, JavaFX & SWT 2
D Drag-Action: Innerhalb meiner View? AWT, Swing, JavaFX & SWT 3
S Swing JButton mit ActionListener innerhalb einer JTable AWT, Swing, JavaFX & SWT 4
H Swing Ausrichtung innerhalb der Reiterlasche eines JTabbedPanes AWT, Swing, JavaFX & SWT 9
A SWT Scrollable Composite innerhalb eines Composites AWT, Swing, JavaFX & SWT 3
JuliaOne Komponenten innerhalb eine JScrollpane werden auch ausserhalb davon gezeichnet! AWT, Swing, JavaFX & SWT 7
M Swing Rahmen innerhalb des JButton entfernen AWT, Swing, JavaFX & SWT 2
D JTables, Test highlighten innerhalb einer Zelle AWT, Swing, JavaFX & SWT 5
J Swing Container innerhalb eines JPanels erfragen AWT, Swing, JavaFX & SWT 3
N rootPane überschreibt bg Innerhalb von secs AWT, Swing, JavaFX & SWT 5
G MousePosition innerhalb eines MouseWheelEvents AWT, Swing, JavaFX & SWT 2
B SWT - Drag & Drop innerhalb einer Table AWT, Swing, JavaFX & SWT 3
hdi Layout innerhalb eines JScrollPane AWT, Swing, JavaFX & SWT 4
A Drag & Drop von Zeilen innerhalb einer Tabelle AWT, Swing, JavaFX & SWT 2
R Gelöst: panelGrösse innerhalb eines JFrames AWT, Swing, JavaFX & SWT 7
I Text innerhalb von Rectangle rendern AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben