JSlider und JRadioButton auf Label anzeigen?

cboy

Mitglied
Hallo,
ich setze mich gerade mit dem Thema GUI auseinander. Also ich habe in meinem Programm einen JSlider (Wertebereich zwischen 0 und 100), 2 Radio Buttons rbRadio1, rbRadio2 mit den Werten Rot bzw. Blau. Ebenso habe ich noch 2 Labels angelegt. Habe den Code auch ordentlich kommentiert, damit ihr euch schneller einlesen könnt :)

Java:
import javax.swing.*;


public class GUI extends JFrame {
	public static void main (String[]args){
		GUI gui1 = new GUI("Mein Fenster");
		gui1.setVisible(true);
	}
	
	private JLabel lblRadioButton;
	private JRadioButton rbRadio1;
	private JRadioButton rbRadio2;
	private JLabel lblSlider;
	private JSlider slider1;
	
	
	
	public GUI(String t){
		
		//Superklasse aufrufen mit Übergabeparameter t
		super(t);
		
		//Größe festlegen auf 600x600 Pixel
		this.setSize(600,600);
		
		//lbl, slider und radiobutton definieren
		JLabel lblRadioButton = new JLabel();
		JRadioButton rbRadio1 = new JRadioButton("Blau");
		JRadioButton rbRadio2 = new JRadioButton ("Rot");
		JLabel lblSlider = new JLabel();
		JSlider slider1 = new JSlider();
		
		//Slider
		slider1.setMinimum(0); //Minimalwert ist Null
		slider1.setMaximum(100); //Maximalwert ist 100
		slider1.setMinorTickSpacing(10); //Feine Striche in 5er Schritte
		slider1.setMajorTickSpacing(20); //Große Striche (mit Zahl) in 10er Schritten
		slider1.setPaintTicks(true); //Striche werden angezeigt
		slider1.setPaintLabels(true); //Anzeige der Zahlen true
		slider1.setPaintTrack(true); //Balken wird angezeigt
		
		
		
		//lbl, slider und radiobutton anlegen
		this.add(lblRadioButton);
		this.add(lblSlider);
		this.add(rbRadio1);
		this.add(rbRadio2);
		this.add(slider1);
		
		//Programm beenden beim schließen
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
	
	}
	
	
	
}

So, meine Fragen zu dem Programm:
-Gibt es eine Möglichkeit, den AKTUELLEN Wert des Sliders und des Radio-Button (bei RadioButton welcher angeklickt wurde) auf einem Label anzeigen zu lassen?
-Leider wird auf meinem GUI die beiden RadioButtons nicht angezeigt, habt ihr eine Idee, warum nicht? Finde den Fehler einfach nicht :(

Bin für jede Hilfe dankbar.
 

Crian

Top Contributor
JRadioButtons brauchen eine ButtonGroup:

Java:
        ButtonGroup group1 = new ButtonGroup();
        group1.add(rbRadio1);
        group1.add(rbRadio2);

Außerdem fehlt dir ein Layout. Probiere mal zum Experimentieren [c]this.setLayout(new FlowLayout());[/c].
 
Zuletzt bearbeitet:

cboy

Mitglied
Hoi, danke für die Antwort. Leider gibt er mir bei dem Layout einen Fehler: "FlowLayout cannot be resolved to a type".

Ich glaube ich hab das auch jetzt mehr oder weniger mit dem RadioButton "gelöst". Aber warum kann ich nicht dem RadioButton in meinem neuen Code einen ActionListener hinzufügen?

Java:
import java.awt.event.ActionEvent;

import javax.swing.*;


public class GUI extends JFrame implements ActionListener{
	public static void main (String[]args){
		GUI gui1 = new GUI("Mein Fenster");
		gui1.setVisible(true);
	}
	
	private JLabel lblRadioButton;
	private JRadioButton rbRadio1;
	private JRadioButton rbRadio2;
	private JLabel lblSlider;
	private JSlider slider1;
	private ButtonGroup group1;
	
	
	public GUI(String t){
		
		//Superklasse aufrufen mit Übergabeparameter t
		super(t);
		
		//Größe festlegen auf 600x600 Pixel
		this.setSize(600,600);
		
		//Layout
		this.setLayout(new FlowLayout(this));
		
		
		//lbl, slider und radiobutton definieren
		JLabel lblRadioButton = new JLabel();
		JRadioButton rbRadio1 = new JRadioButton("Blau");
		JRadioButton rbRadio2 = new JRadioButton ("Rot");
		JLabel lblSlider = new JLabel();
		JSlider slider1 = new JSlider();
		
		//Slider
		slider1.setMinimum(0); //Minimalwert ist Null
		slider1.setMaximum(100); //Maximalwert ist 100
		slider1.setMinorTickSpacing(10); //Feine Striche in 5er Schritte
		slider1.setMajorTickSpacing(20); //Große Striche (mit Zahl) in 10er Schritten
		slider1.setPaintTicks(true); //Striche werden angezeigt
		slider1.setPaintLabels(true); //Anzeige der Zahlen true
		slider1.setPaintTrack(true); //Balken wird angezeigt
		
		
		
		//lbl, slider und radiobutton anlegen
		this.add(lblRadioButton);
		this.add(lblSlider);
		this.add(slider1);
		
		//Programm beenden beim schließen
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		
		//Buttongroup
		this.rbRadio1.addActionListener(this);
		
		this.group1 = new ButtonGroup();
		group1.add(rbRadio1);
		group1.add(rbRadio2);
		
		
	}
	
	//Eventhandling: gebe den gewählten Button aus
    public void actionPerformed(ActionEvent Event){
    	JRadioButton source = (JRadioButton)Event.getSource(); //Der den Event auslösenden RadioButton
    		if (source==rbRadio1) {
    			System.out.println("\"Blau\" ausgewählt");
    		}
    		
    		else if (source==rbRadio2) {
    			System.out.println("\"Rot\" ausgewählt");
    		}
    		
    		
    		
    }
    

	
	
}
 

Crian

Top Contributor
Probier mal dieses Programm aus:

Java:
package graphicalUserInterface;

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

@SuppressWarnings("serial")
public class RadioButtonsGui extends JFrame implements ActionListener {

    private JRadioButton rbRadio1;
    private JRadioButton rbRadio2;

    public RadioButtonsGui(String t) {
        super(t);
        initGui();
        addButtons();
        addSlider();
        startGui();
    }

    private void initGui() {
        setSize(600, 600);
        setLayout(new FlowLayout());
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    private void addButtons() {
        JLabel lblRadioButton = new JLabel();

        JRadioButton rbRadio1 = new JRadioButton("Blau");
        JRadioButton rbRadio2 = new JRadioButton("Rot");

        ButtonGroup group1 = new ButtonGroup();
        group1.add(rbRadio1);
        group1.add(rbRadio2);

        add(lblRadioButton);
        add(rbRadio1);
        add(rbRadio2);

        rbRadio1.addActionListener(this);
        rbRadio2.addActionListener(this);

        this.rbRadio1 = rbRadio1;
        this.rbRadio2 = rbRadio2;
   }

    private void addSlider() {
        JLabel lblSlider = new JLabel();
        JSlider slider1 = new JSlider();

        slider1.setMinimum(0);
        slider1.setMaximum(100);
        slider1.setMinorTickSpacing(10);
        slider1.setMajorTickSpacing(20);
        slider1.setPaintTicks(true);
        slider1.setPaintLabels(true);
        slider1.setPaintTrack(true);

        add(lblSlider);
        add(slider1);
    }

    private void startGui() {
        setVisible(true);
    }

    public static void main(String[] args) {
        new RadioButtonsGui("Mein Fenster");
    }

    @Override
    public void actionPerformed(ActionEvent event) {
        Object source = event.getSource();

        if (source == rbRadio1) {
            System.out.println("\"Blau\" ausgewählt");
        }
        else if (source == rbRadio2) {
            System.out.println("\"Rot\" ausgewählt");
        }
    }

}


Bei dir fehlt diese Verbindung hier:

Java:
        this.rbRadio1 = rbRadio1;
        this.rbRadio2 = rbRadio2;

Außerdem sieht man, dass Codestrukturierung oft Kommentaren überlegen ist. ;)
 

cboy

Mitglied
Warum hast du denn die Methode private void addSlider(), private void addButtons() geschrieben? Kann man die nicht auch so benutzen?

Und: habe einmal die fehlende Verbindung von dir eingegeben in mein Programm, was wieder dazu führt, dass die Fehlermeldung beim addActionListener kommt :(
 

cboy

Mitglied
Achso. Aber ich hab doch implements ActionListener:

Java:
public class GUI extends JFrame implements ActionListener{

oder hab ich das eben falsch verstanden?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S JSlider und ChangeListener Java Basics - Anfänger-Themen 1
S OOP Zwei JSlider in einer Klasse Java Basics - Anfänger-Themen 2
Z JSlider - Text wird nich angezeigt Java Basics - Anfänger-Themen 0
S JSlider Schritt Größe Java Basics - Anfänger-Themen 5
F JSlider korrekt implementieren Java Basics - Anfänger-Themen 19
C Aktueller Wert von einem JSlider auf ein Label Java Basics - Anfänger-Themen 2
I Rückgabewert von JSlider Java Basics - Anfänger-Themen 15
R Zeitachse mit JSlider Java Basics - Anfänger-Themen 13
V JSlider wird nicht angezeigt Java Basics - Anfänger-Themen 12
H Swing: JSlider wird nicht angezeigt Java Basics - Anfänger-Themen 5
G JSlider + Lautstärke Java Basics - Anfänger-Themen 10
S Graphic im Panel änder durch JSlider Java Basics - Anfänger-Themen 2
S Schieberegler (JSlider) funktioniert nicht Java Basics - Anfänger-Themen 5
K Farbenspiel mit dem jSlider Java Basics - Anfänger-Themen 5
? JSlider Java Basics - Anfänger-Themen 9
G JSlider Wert auslesen Java Basics - Anfänger-Themen 1
M ChangeListener Problem bei JSlider Java Basics - Anfänger-Themen 3
S undo auf JSlider Java Basics - Anfänger-Themen 9
T JRadioButton verknüpfen Java Basics - Anfänger-Themen 1
M Verbesserung für JRadioButton Java Basics - Anfänger-Themen 10
D JRadiobutton reagiert nicht wie gewünscht Java Basics - Anfänger-Themen 3
J 19% Aufschlag per JRadioButton Java Basics - Anfänger-Themen 2
J Probleme beim JRadioButton Java Basics - Anfänger-Themen 2
B JRadioButton wechsel gibt NullPointerException Java Basics - Anfänger-Themen 2
M JRadioButton Java Basics - Anfänger-Themen 4
J JRadioButton in JTable setzen Java Basics - Anfänger-Themen 4
M GUI - Toggle JRadioButton? Java Basics - Anfänger-Themen 2
A JRadioButton Java Basics - Anfänger-Themen 6
M JRadioButton keine Instanz von ButtonModel Java Basics - Anfänger-Themen 10
Das Brot Nach .add(JRadioButton) funktioniert der KeyListener nicht mehr Java Basics - Anfänger-Themen 2
H JRadioButton steuert Checkbox Java Basics - Anfänger-Themen 5
S JRadioButton - Wert setzen aus Datenbank Java Basics - Anfänger-Themen 4
A JRadioButton aus Code heraus selectieren. Java Basics - Anfänger-Themen 4
I Unerklärliche Null-Pointer-Exception bei JRadioButton Array Java Basics - Anfänger-Themen 2
O JRadioButton's - Einen aktivieren/ Rest deaktivieren Java Basics - Anfänger-Themen 5
G JRadioButton Objekte zugehörig zu welcher buttongroup Java Basics - Anfänger-Themen 3
H Die Schriftfarbe des JRadioButton festlegen Java Basics - Anfänger-Themen 2
G Zeichen in JRadioButton ersetzen Java Basics - Anfänger-Themen 3
G Status von JRadioButton Java Basics - Anfänger-Themen 5
G JRadioButton Java Basics - Anfänger-Themen 4
T alle JRadioButton deaktivieren Java Basics - Anfänger-Themen 8
DeeDee0815 JRadioButton, actionPerformed und Textfelder Java Basics - Anfänger-Themen 2
P JRadioButton der ButtonGroup nicht sichtbar ? Java Basics - Anfänger-Themen 2
G JSpinner als JRadioButton? Java Basics - Anfänger-Themen 3
X JRadioButton isEnabled() ? Java Basics - Anfänger-Themen 2
J get Methode(boolean) JRadiobutton? Java Basics - Anfänger-Themen 2
rafi072001 Assoziation zwischen Musiker und Label Java Basics - Anfänger-Themen 1
J Hilfe beim Label animieren Java Basics - Anfänger-Themen 1
J Java FX - Label aktualisieren Java Basics - Anfänger-Themen 1
M Java GUI label ändert sich erst zum Schluss Java Basics - Anfänger-Themen 4
S Counter Label Button Java Basics - Anfänger-Themen 4
J JavaFX Label,Button zur Laufzeit Java Basics - Anfänger-Themen 30
M Mit KeyListener Farbe von Label ändern Java Basics - Anfänger-Themen 13
B Datenbank, aktuelle Ende als Zahl an Label übergeben Java Basics - Anfänger-Themen 7
J Einen Buttonklick in Label anzeigen Java Basics - Anfänger-Themen 6
J Erste Schritte Mit repaint() ist Label nicht sichtbar Java Basics - Anfänger-Themen 15
V Label-Problem Java Basics - Anfänger-Themen 4
H Stringanzeige in einem Label Java Basics - Anfänger-Themen 2
J JavaFX -> SocketIO -> Thread -> Update Label Java Basics - Anfänger-Themen 13
KeVoZ_ Label auf JFrame willkürlich Positionieren Java Basics - Anfänger-Themen 2
N Dynamisch erzeugtes Label wird nicht angezeigt, TextField schon Java Basics - Anfänger-Themen 1
M Ausgabe eines Arrays auf Label (Javafx) Java Basics - Anfänger-Themen 4
V Die die aktuelle Größe zusätzlich in einem Label angezeigt wird Java Basics - Anfänger-Themen 11
T Erste Schritte 2 Codes zusammen fügen / Label in JFrame Java Basics - Anfänger-Themen 1
S Java Label hat komischen text Java Basics - Anfänger-Themen 4
S Label Wert zuweisen Java Basics - Anfänger-Themen 8
F Erste Schritte Label Text vor Methodenaufruf setzen Java Basics - Anfänger-Themen 17
W Klassen Fehler bei public void setLabelText(JLabel label, String text) Java Basics - Anfänger-Themen 11
W Erste Schritte Timer soll jede Sekunde Label aktualisieren Java Basics - Anfänger-Themen 5
S Label in Vordergrund Java Basics - Anfänger-Themen 4
G GUI Label Werte ersetzen Java Basics - Anfänger-Themen 25
D String aus txt in label für Tabelle einfügen Java Basics - Anfänger-Themen 8
W GUI Label, ComboBox Java Basics - Anfänger-Themen 4
M BufferedReader => TextField/Label Java Basics - Anfänger-Themen 8
M Ausgabe einer ArrayList auf einem Label Java Basics - Anfänger-Themen 4
W Java label nicht ansprechbar Java Basics - Anfänger-Themen 7
T Icon eines Label speichern Java Basics - Anfänger-Themen 9
J Uhr:Label aktuallisieren Java Basics - Anfänger-Themen 7
J Zeichen für Durchmesser Ø in Label darstellen Java Basics - Anfänger-Themen 15
J Panel + Label anzeigen - Ich kriege es nicht hin Java Basics - Anfänger-Themen 3
C Panel und Label überdecken sich Java Basics - Anfänger-Themen 2
L Label + MouseListener Java Basics - Anfänger-Themen 12
P Label Array in mouseEntered vergleichen Java Basics - Anfänger-Themen 4
J JPG in einem Label einfügen und anzeigen lassen Java Basics - Anfänger-Themen 2
J "label.setText" funktioniert nicht Java Basics - Anfänger-Themen 9
K Werte von 2 Klassen austauschen/ Bild im Label ändern Java Basics - Anfänger-Themen 12
R Text vom Label ändern Java Basics - Anfänger-Themen 14
D Vererbung ProcessBar mit einem Label Java Basics - Anfänger-Themen 4
W Anordnung von Label und Button Java Basics - Anfänger-Themen 2
S NullPointerException beim Checkbox-Label-Array mit nextLine() Java Basics - Anfänger-Themen 6
Z Label verschwindet in JScrollPane Java Basics - Anfänger-Themen 7
J Elegante Art mehrere Label mit einem icon zu setzen Java Basics - Anfänger-Themen 13
S Warum zeigt das Label nichts an??? Java Basics - Anfänger-Themen 9
N Text in Label ändern Java Basics - Anfänger-Themen 11
C Label ändert ändert sich nicht Java Basics - Anfänger-Themen 4
S In das Label eines anderen Threads schreiben Java Basics - Anfänger-Themen 2
M Label verschwindet? Java Basics - Anfänger-Themen 3
P Label erstellen und positionieren Java Basics - Anfänger-Themen 5
A TextField + Label = ? Java Basics - Anfänger-Themen 7
Stillmatic1985 Label in einem Frame zentrieren Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben