Wie kann ich eine List in Java in der GUI ausgeben?
Ich habe eine Klasse "Bestellung" in der die Produkte die ich auswähle in die Liste kommen. Nun möchte ich diese Liste in der GUI ausgeben lassen. Darüber hinaus möchte ich den Gesamtpreis aller gewählten Produkte anzeigen lassen. Ich hab schon ziemlich viel probiert und es funktioniert nichts. Wäre super wenn mir jemand helfen könnte. Anbei die Klasse "Bestellung":
import java.util.ArrayList; import java.util.List;
public class Bestellung {
private static Bestellung instance;
List<Produkt> produkte;
public Bestellung(){
produkte = new ArrayList<>();
}
public static Bestellung getInstance(){
if(instance == null){
instance = new Bestellung();
}
return instance;
}
public List<Produkt> getProdukte() {
return produkte;
}
public void artikelHinzufuegen(Produkt p){
produkte.add(p);
}
public double berechneGesamtpreis(){
double gesamtpreis = 0.0D;
for(Produkt produkt : produkte){
gesamtpreis += produkt.getPreis();
}
return gesamtpreis;
}
}
3 Antworten
Wenn du die Produkte als Strings ausgeben möchtest füge der Klasse Produkt die Methode "public void String toString() " in welche du den aus zugebenden String zurück gibst hinzu.
Dies ist dann das GUI element:
java.awt.List list = new java.awt.List();
list.setListData(Bestellung.getInstance().getProdukte().toArray());
Kommt drauf an, wie du deine Daten Darstellen willst.
1. Java Swing mit JList oder JTable
2. JavaFX mit ListView oder TableView.
Hast du Einschränkungen oder vorgaben was du verwenden möchtest oder sollst?
Ich hab schon ziemlich viel probiert und es funktioniert nichts.
Kannst du etwas genauer werden, was du probiert hast?
JTable z.B.?