JButton in JLabel malen

svott

Mitglied
Hallo,
ich programmiere gerade in einer kleinen Gruppe an einem Spiel. Dabei haben wir ein JLabel, auf dem eine Stadtkarte gezeichnet wird [mit paintComponent(Graphics g)].

Zusätzlich soll bei einem Mausklick auf das Label an der Position der Maus ein JButton gezeichnet werden. Die ganze Geschichte mit der Maus sollte kein Problem sein. Allgemein stellt sich erstmal die grundlegende Frage, wie ich ein JButton auf ein JLabel zeiche und dabei die Positionen angeben kann?


Kleiner BeispielCode, wie es nicht funktioniert.
Code:
package malen;

import java.awt.Graphics;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class Test extends JLabel {

	public Test() {
		
	}
	
	public void paintComponent(Graphics g) {
		g.drawLine(50, 50, 100, 100);
		JButton b = new JButton("Hallo");
		b.paint(g);
		
	}
	
	public static void main(String[] args) {
		JFrame f = new JFrame();
		f.add(new Test());
		f.setVisible(true);
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setLocationRelativeTo(null);
		f.setSize(300, 300);
		
	}
	
}

mfg Svott
 
S

SlaterB

Gast
was bringt nur die Leute immer dazu, in einem JLabel zu malen.., es gibt doch JPanel,
habe bisschen probiert bis es bei mir etwas klappt, Änderungen:
- setSize() für JFrame VOR setVisible(true) ! irgendwie wichtig für Layout, fürs erste Zeichnen,
setVisible(true) einfach immer erst als letzen Befehl
- der Button braucht auch eine Size, sonst malt er gar nix, bekäme er normalerweise durchs Layout
- den Button besser nicht erst im paint und dann ja ständig wieder erzeugen..
- JPanel statt JLabel

Java:
public class Test
{
    public static void main(final String[] args)
    {
        Test2.main(null);
    }
}
class Test2 extends JPanel {

    public Test2() {
        
    }
    
    public void paintComponent(Graphics g) {
        super.paintComponent(g);
        g.drawLine(50, 50, 100, 100);
        JButton b = new JButton("Hallo");
        b.setSize(100,20);
        b.paint(g);
    }
    
    public static void main(String[] args) {
        JFrame f = new JFrame();
        f.add(new Test2());
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setLocationRelativeTo(null);
        f.setSize(300, 300);
        f.setVisible(true);
        
    }
    
}
 

svott

Mitglied
ja war auch nur ein kurzes Beispiel ;)

und mit welcher Methode kann ich einstellen, dass das Teil nicht oben in der Ecke angezeigt wird, sondern da wo ich will?
Und einen Listener müsste ich bestimmt aufs Panel setzen und dann die Koordinaten abfragen, weil ein funktionstüchtigen Listener für den Button setzen nicht möglich?
 
S

SlaterB

Gast
dem JButton kann man wohl nichts mitteilen,
setClip() oder ähnliches gibt es vielleicht in Graphics, da musst du Grundlagen zu komplizierten Zeichnen nachlesen,

denkbar wäre auch wiederum ein JPanel mit kompletten Layout für die gesamte auszufüllende Fläche,
nur eben nicht per add() 'in Echt' drin, sondern mit paint gemalt,
ob ohne add() aber das Layout aktiviert wird? vielleicht hilft validate()

na man sieht, ich könnte hier jetzt auch nur raten
 
Zuletzt bearbeitet von einem Moderator:

svott

Mitglied
ok anders: Gibt es eine Möglichkeit(/Layout), eine Button-Komponente auf dem JPanel genau an einer von mir bestimmten Punkt anzeigen zu lassen?
Mit GridBagLayout und Co ist ja leider keine genaue Positionierung möglich.

(Wir haben dir Vorgabe, nur das normale Swing Package zu benutzen und keine anderen Externen Packages)
 

svott

Mitglied
nee oder :oops:

da arbeitet man soviel mit Swing, macht Tutorials und beschäftigt sich mit Layouts und dann wird einem dass einfachste vorenthalten.

danke. damit sollte dann das Problem gelöst sein:toll:
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
stylegangsta JLabel durch Klick auf JButton einblenden AWT, Swing, JavaFX & SWT 16
R AWT JLabel oder JButton aktualisieren AWT, Swing, JavaFX & SWT 1
M Problem mit FlowLayout, JLabel und JButton AWT, Swing, JavaFX & SWT 4
K Swing JButton über JLabel AWT, Swing, JavaFX & SWT 6
J JButton mit JLabel verdecken? AWT, Swing, JavaFX & SWT 9
B Inhalt von JTextField durch Klick auf JButton in JLabel anzeigen lassen AWT, Swing, JavaFX & SWT 8
G jButton Text zu Integer umwandeln // jLabel mit Counter auf AWT, Swing, JavaFX & SWT 16
B JButton während der Laufzeit in JLabel umwandeln AWT, Swing, JavaFX & SWT 3
R JButton- und JLabel-Größe an Textgröße anpassen AWT, Swing, JavaFX & SWT 9
G JButton mit importFiles-Funktion auf JDrawPane AWT, Swing, JavaFX & SWT 5
B JButton Search AWT, Swing, JavaFX & SWT 8
B Swing JButton mit KeyListener AWT, Swing, JavaFX & SWT 3
L JButton durch Mausklick auslösen und Enter-Taste AWT, Swing, JavaFX & SWT 2
N Erlennen ob JButton gedrückt ist AWT, Swing, JavaFX & SWT 6
D JButton Form verändern AWT, Swing, JavaFX & SWT 4
R Grafik per JButton laden und austauschen lassen AWT, Swing, JavaFX & SWT 14
SvenPittelkow Programm soll auf JButton warten bis der geklickt wurde AWT, Swing, JavaFX & SWT 1
Badebay Problem mit JButton AWT, Swing, JavaFX & SWT 2
Z Swing Drag and Drop mit einem JButton AWT, Swing, JavaFX & SWT 1
Z Swing Kann man auf JButton zeichenen AWT, Swing, JavaFX & SWT 3
J JButton Icon hinzufügen AWT, Swing, JavaFX & SWT 5
U Swing JButton mit Icon AWT, Swing, JavaFX & SWT 7
ms_cikar Jbutton erzeugt neue Buttons AWT, Swing, JavaFX & SWT 2
Drachenbauer Swing Wie ändere ich die Farbe der Konturen von jButton und jCombobox? AWT, Swing, JavaFX & SWT 18
Drachenbauer Swing Wie ändere ich die helle geklickt-Farbe von einem JButton? AWT, Swing, JavaFX & SWT 4
A Swing JButton mit Pfeiltasten bewegen AWT, Swing, JavaFX & SWT 6
F Swing Scrollbare Liste von JButton AWT, Swing, JavaFX & SWT 4
Hatsi09 JButton text layout AWT, Swing, JavaFX & SWT 9
J JButton zum ändern Der Schriftart/Schriftgröße AWT, Swing, JavaFX & SWT 2
A Swing JButton aussehen AWT, Swing, JavaFX & SWT 12
J jButton soll nach klicken eine Variable um 1 erhöhen AWT, Swing, JavaFX & SWT 2
Legi Swing JButton Icon verschiebt sich AWT, Swing, JavaFX & SWT 2
T Swing Änderung des ActionListener Events nach Klick auf JButton AWT, Swing, JavaFX & SWT 2
S Swing JButton verschwindet nach Compilieren AWT, Swing, JavaFX & SWT 8
B Swing Posistion von JButton auslesen gibt immer 0 aus AWT, Swing, JavaFX & SWT 1
J Thread kennt JButton nicht. AWT, Swing, JavaFX & SWT 11
G Swing JButton ändert (unerwünscht) Größe bei Ausführung AWT, Swing, JavaFX & SWT 4
MR._FIRE_Flower Variable setzten mit JButton AWT, Swing, JavaFX & SWT 5
S Mit JButton neues Fester öffnen und das alte schließen AWT, Swing, JavaFX & SWT 3
T JButton wird beim vergrößern des Fensters erst sichtbar AWT, Swing, JavaFX & SWT 4
R Swing Verändern der Ausrichtung JButton und neu anzeigen AWT, Swing, JavaFX & SWT 2
G Swing JButton - Keine Klickanimation AWT, Swing, JavaFX & SWT 4
Joker4632 JButton nicht sichtbar, aber funktionsfähig AWT, Swing, JavaFX & SWT 8
B Swing JButton deaktivieren, wenn nicht alle JTextFields ausgefüllt sind. AWT, Swing, JavaFX & SWT 2
D JButton per Tastenkombi auswählen AWT, Swing, JavaFX & SWT 2
K JButton nicht sichtbar machen für User 2 AWT, Swing, JavaFX & SWT 4
L Swing JButton soll link öffnen AWT, Swing, JavaFX & SWT 1
K JButton auf anderer Klasse AWT, Swing, JavaFX & SWT 6
A JButton soll durch anklicken die Farbe wechseln AWT, Swing, JavaFX & SWT 8
T KeyListener funktioniert nicht wenn ich ein JButton hinzufüge AWT, Swing, JavaFX & SWT 1
R Swing ActionListener bei JButton AWT, Swing, JavaFX & SWT 9
B JButton -> Rahmen wegbekommen AWT, Swing, JavaFX & SWT 7
N JButton über benutzerdefinierte paintComponent setzen AWT, Swing, JavaFX & SWT 3
T JButton überlagern sich und werden erst beim Mausscrollen sichtbar AWT, Swing, JavaFX & SWT 2
B JButton erscheint in JFrame, obwohl er diesem nicht zugeordnet wurde! AWT, Swing, JavaFX & SWT 1
M JButton Probleme AWT, Swing, JavaFX & SWT 14
T Klasse über JButton schließen AWT, Swing, JavaFX & SWT 4
M Textfarbe JButton verändern AWT, Swing, JavaFX & SWT 2
N JButton ausblenden AWT, Swing, JavaFX & SWT 2
M Swing jButton Text verschwindet AWT, Swing, JavaFX & SWT 2
C Swing JButton wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
stylegangsta Eigene Klasse für JButton aus dem JFrame abrufen AWT, Swing, JavaFX & SWT 29
stylegangsta MouseEvents aus JButton aufrufen AWT, Swing, JavaFX & SWT 3
stylegangsta JButton Transparent anzeigen AWT, Swing, JavaFX & SWT 9
stylegangsta JButton Fehelr javax.swing.ImageIcon.<init>(Unknown Source) AWT, Swing, JavaFX & SWT 24
X Swing JButton's zum JScrollPane hinzufügen geht nicht. Bitte um Hilfe. AWT, Swing, JavaFX & SWT 9
D JButton - Nur Icon anzeigen / transparenter Hintergrund AWT, Swing, JavaFX & SWT 2
S JButton-Label vergrößern AWT, Swing, JavaFX & SWT 2
J Swing Basics - JButton funktioniert nicht. AWT, Swing, JavaFX & SWT 1
L JButton mit ImageIcon/Fehlermeldung AWT, Swing, JavaFX & SWT 1
D jButton Problem, ein Rieser Button bedeckt das ganze frame AWT, Swing, JavaFX & SWT 1
L Array mit JButton, wie rausfinden auf welche JButton geklickt wurde + index des JButtons ausgeben AWT, Swing, JavaFX & SWT 4
K (GUI) JButton Farbe bei druck ändern AWT, Swing, JavaFX & SWT 3
L JButton mit Image AWT, Swing, JavaFX & SWT 5
fLooojava JButton [Focus) AWT, Swing, JavaFX & SWT 4
M JButton - Listener AWT, Swing, JavaFX & SWT 1
D jButton auf von jFrame erzeugtem jDialog AWT, Swing, JavaFX & SWT 16
L JButton flackern - Programm hängt sich auf AWT, Swing, JavaFX & SWT 3
L JButton - Größe anders als erwartet AWT, Swing, JavaFX & SWT 2
1 JButton nach Klick ausblenden AWT, Swing, JavaFX & SWT 6
X Swing 1 JButton bedeckt meine ganze Frame aber Warum? AWT, Swing, JavaFX & SWT 2
S Größe und Farbe vom JButton festlegen AWT, Swing, JavaFX & SWT 2
H Swing JList/JTable mit JButton, JTextField, Image, JComboBox und JLable AWT, Swing, JavaFX & SWT 2
J JButton neu zeichnen lassen AWT, Swing, JavaFX & SWT 9
S JButton u. Label auf paint-Methode AWT, Swing, JavaFX & SWT 1
HoloYoitsu Swing JButton in verschiedenen Winkeln drehen AWT, Swing, JavaFX & SWT 0
J vocab1 = new JButton(""+voc1.get(nr).toString()+""); AWT, Swing, JavaFX & SWT 16
A JButton wird bei ActionListener nicht "angenommen" AWT, Swing, JavaFX & SWT 7
BRoll JButton Text nicht ausblenden ("...") AWT, Swing, JavaFX & SWT 2
I JFrame mit JButton schließen? AWT, Swing, JavaFX & SWT 0
D JList&JButton erst nach Resize des JFRame sichtbar AWT, Swing, JavaFX & SWT 2
J Swing JFrame slideout, wenn JButton gedrückt wurde AWT, Swing, JavaFX & SWT 0
S Swing Rückmeldung für JButton AWT, Swing, JavaFX & SWT 4
L JButton im Frame fest verankern AWT, Swing, JavaFX & SWT 0
M Swing Mix JComboBox - JButton? AWT, Swing, JavaFX & SWT 6
U Event Handling JButton Actionevent: starte Spiel AWT, Swing, JavaFX & SWT 4
E JButton füllt ganzes JPanel auf AWT, Swing, JavaFX & SWT 6
P Verbuggte custom JButton unter Windows AWT, Swing, JavaFX & SWT 9
W Swing JButton lässt sich nicht anzeigen AWT, Swing, JavaFX & SWT 8
Kandum Swing JButton - onclick -> Grafikfehler AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben