Hallo,
habe mir ein paar Länder in einem String Array gespeichert.
Wollte nun per ComboBox die Länder auswählen können und mit Switch-Case die
jeweiligen Informationen preisgeben. Nur finde ich leider keine Lösung, mein String Array
zu laden. Bei Switch muss noch irgendetwas in die Klammern...
//Edit:
Hatte schon cbLaender.getSelectedIndex und getSelectedItem versucht, geht leider beides nicht.
Mache wahrscheinlich noch irgendetwas falsch.
Ich bedanke mich im Voraus!
Mit freundlichen Grüßen
habe mir ein paar Länder in einem String Array gespeichert.
Wollte nun per ComboBox die Länder auswählen können und mit Switch-Case die
jeweiligen Informationen preisgeben. Nur finde ich leider keine Lösung, mein String Array
zu laden. Bei Switch muss noch irgendetwas in die Klammern...
//Edit:
Hatte schon cbLaender.getSelectedIndex und getSelectedItem versucht, geht leider beides nicht.
Mache wahrscheinlich noch irgendetwas falsch.
Java:
package ebkherne.hbit3.laender;
import java.awt.Dimension;
import javax.swing.ImageIcon;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Logik extends JPanel {
private JLabel lblLand, lblInformation, lblFlaeche, lblBevoelkerung, lblBevoelkerungsdichte, lblWaehrung;
private JTextField txtFlaeche, txtBevoelkerung, txtBevoelkerungsdichte, txtWaehrung;
private JComboBox cbLand;
String[] Laender = {"Deutschland", "Frankreich", "England"};
String DEImage = "G:/Schule/drittes Jahr/Programmieren/workspace/07Laender/flaggen/deutschland.png";
String FRImage = "G:/Schule/drittes Jahr/Programmieren/workspace/07Laender/flaggen/frankreich.png";
String ENImage = "G:/Schule/drittes Jahr/Programmieren/workspace/07Laender/flaggen/england.png";
public Logik(int X, int Y) {
lblLand = new JLabel("Wähle ein Land..");
lblLand.setBounds(50, 50, 100, 20);
this.add(lblLand);
lblInformation = new JLabel("Informationen");
lblInformation.setBounds(300, 50, 200, 20);
this.add(lblInformation);
cbLand = new JComboBox(Laender);
cbLand.setBounds(50, 100, 150, 30);
this.add(cbLand);
lblFlaeche = new JLabel("Fläche:");
lblFlaeche.setBounds(300, 100, 200, 20);
this.add(lblFlaeche);
lblBevoelkerung = new JLabel("Bevölkerung:");
lblBevoelkerung.setBounds(300, 150, 200, 20);
this.add(lblBevoelkerung);
lblBevoelkerungsdichte = new JLabel("Bevölkerungsdichte:");
lblBevoelkerungsdichte.setBounds(300, 200, 200, 20);
this.add(lblBevoelkerungsdichte);
lblWaehrung = new JLabel("Währung:");
lblWaehrung.setBounds(300, 250, 200, 20);
this.add(lblWaehrung);
txtFlaeche = new JTextField();
txtFlaeche.setBounds(450, 100, 200, 20);
txtFlaeche.setEditable(false);
this.add(txtFlaeche);
txtBevoelkerung = new JTextField();
txtBevoelkerung.setBounds(450, 150, 200, 20);
txtBevoelkerung.setEditable(false);
this.add(txtBevoelkerung);
txtBevoelkerungsdichte = new JTextField();
txtBevoelkerungsdichte.setBounds(450, 200, 200, 20);
txtBevoelkerungsdichte.setEditable(false);
this.add(txtBevoelkerungsdichte);
txtWaehrung = new JTextField();
txtWaehrung.setBounds(450, 250, 200, 20);
txtWaehrung.setEditable(false);
this.add(txtWaehrung);
switch () {
case "Deutschland":
JLabel lblDEImage = new JLabel(new ImageIcon(DEImage));
lblDEImage.setBounds(25, 100, 200, 200);
this.add(lblDEImage);
lblFlaeche.setText("357.385.71 km²");
lblBevoelkerung.setText("82.521.653 (Stand 2016)");
lblBevoelkerungsdichte.setText("231 Einwohner pro km²");
lblWaehrung.setText("Euro (EUR)");
break;
case "Frankreich":
JLabel lblFRImage = new JLabel(new ImageIcon(FRImage));
lblFRImage.setBounds(25, 100, 200, 200);
this.add(lblFRImage);
lblFlaeche.setText("643.801 km²");
lblBevoelkerung.setText("66.991.000 (Stand 2017)");
lblBevoelkerungsdichte.setText("103 Einwohner pro km²");
lblWaehrung.setText("Euro (EUR)");
break;
case "England":
JLabel lblENImage = new JLabel(new ImageIcon(ENImage));
lblENImage.setBounds(25, 100, 200, 200);
this.add(lblENImage);
lblFlaeche.setText("130.395 km²");
lblBevoelkerung.setText("53.316.600 (Stand 2014)");
lblBevoelkerungsdichte.setText("417 Einwohner pro km²");
lblWaehrung.setText("Pfund (£)");
break;
}
this.setPreferredSize(new Dimension(X, Y));
this.setLayout(null);
}
}
Ich bedanke mich im Voraus!
Mit freundlichen Grüßen
Zuletzt bearbeitet: