Aktualisierung einer JList

Blagg Dogg

Mitglied
hi,

kann mir bitte wer helfen? es geht um ein adressbuch, und zwar möchte ich, dass die jlist im update aktualisiert wird bzw. die daten neu geladen werden.

Java:
package main;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.ArrayList;
import java.util.Observable;
import java.util.Observer;

import javax.swing.*;

import data.*;

import utilities.*;


public class MainBook implements Observer {
	WriteData write;
	JFrame main;
	JPanel north, center, south;
	//JList list;
	JList list;
	
	
	ArrayList<Adresse> adressen = null;

	public MainBook(WriteData w){
		write = w;
	}
	
	public JFrame create(String name){
		main = new JFrame();
		main.setTitle(name);
		main.setSize(500, 600);
		main.setLocationRelativeTo(null);
		//setDefaultCloseOperation(EXIT_ON_CLOSE);


		main.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
	      
	    main.addWindowListener(new WindowAdapter() {
	       public void windowClosing(WindowEvent e) {
	          exit();
	       }
	    });
		
		main.add(buildNorth(), BorderLayout.NORTH);
		main.add(buildCenter(), BorderLayout.CENTER);
		main.add(buildSouth(), BorderLayout.SOUTH);
		return main;
		
		
		
	}
	
	
	private JPanel buildNorth(){
		north = new JPanel(new FlowLayout(FlowLayout.CENTER));
		north.setBorder(BorderFactory.createTitledBorder("Neue Kontakte hinzufügen"));
		
		JButton kontakt = new JButton("Neuen Kontakt anlegen");
		kontakt.setToolTipText("Lege einen neuen Kontakt an");
		
		kontakt.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent arg0) {
				AdressEingabe a= new AdressEingabe(write);
				a.create().setVisible(true);
				
			}
		});		
		
		/*
		JButton gruppe = new JButton("Neue Gruppe anlegen");
		
		gruppe.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent arg0) {
				new NeueGruppe().setVisible(true);
				
			}
		});
		*/
		north.add(kontakt);
	
		
		
		return north;
	}

	private JPanel buildCenter(){
		center = new JPanel(new BorderLayout());
		
		adressen=new ReadData().deserealize();

		
		center.setBorder(BorderFactory.createTitledBorder("Meine Kontakte"));
		
		list = new JList(adressen.toArray());
		
		center.add(list);
		

		JButton details = new JButton("Details");
		details.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent arg0) {
				if (list.getSelectedIndex()==-1) new MyMsg("Bitte erst Namen wählen").setVisible(true);
				else new ShowAdress((Adresse) adressen.toArray()[list.getSelectedIndex()]).setVisible(true);
				
			}
		});
		
		JButton delete = new JButton("Kontakt entfernen");
		delete.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent arg0) {
				if (list.getSelectedIndex()==-1) new MyMsg("Bitte erst Namen wählen").setVisible(true);
				else write.removeFromList((Adresse)adressen.toArray()[list.getSelectedIndex()]);
			}
		});
		
		JPanel button = new JPanel(new FlowLayout(FlowLayout.CENTER));
		button.add(details);
		button.add(delete);
		center.add(button, BorderLayout.SOUTH);

		
		return center;
	}
	
	private JPanel buildSouth(){
		south = new JPanel(new FlowLayout());
		south.setBorder(BorderFactory.createTitledBorder("Optionen"));
		
		JButton pass = new JButton("Speichern");
		
		south.add(pass);
		
		JButton about = new JButton("Über Adressbuch");
		south.add(about);
		
		about.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent arg0) {
				new About("Adressbuch").setVisible(true);
				
			}
		});
		
		JButton close = new JButton("Schließen");
		south.add(close);
		close.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				exit();
				
			}
		});
		
		return south;
	}
	
	
	public void saveData(){
		// save
	}
	
	   private void exit() {
		      int result = JOptionPane.showConfirmDialog(null,
		      "Möchten Sie das Programm beenden?",
		      "Programm beenden",
		      JOptionPane.YES_NO_OPTION);

		      switch(result) {
		         case JOptionPane.YES_OPTION:
		         System.exit(0);

		         case JOptionPane.NO_OPTION:
		         //vielleicht ist hier was zu tun
		      }
		   }

	@Override
	public void update(Observable arg0, Object arg1) {
		System.out.println("--------------------Updated !!!----------------------");
		// Liste aktualisieren
		ArrayList<Adresse> result = new ReadData().deserealize();
		list=null;
		list = new JList(result.toArray()); //klappt nicht - wird nicht neu initialisiert
		
		
		//zum Testen - klappt: result beinhaltet die richtigen Daten
		/*
		for(Adresse aa: result){
			System.out.println(aa.toString());
		}
		*/
		
		
		
	}
}
 

Blagg Dogg

Mitglied
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: javax.swing.JList$1 cannot be cast to javax.swing.DefaultListModel

kann das irgendwie nicht casten...
 
F

freak_007

Gast
Dein Code sieht wahrscheinlich so aus:
Java:
DefaultListModel listModel = (DefaultListModel) list;
schreib es so um
Java:
DefaultListModel listModel = (DefaultListModel) list.getModel();
Falls es nicht geht, poste uns ein neuen Code.
Gruß,
Freak
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Aktualisierung einer JComboBox -> RepaintProblem! AWT, Swing, JavaFX & SWT 3
A Aktualisierung eines Bildes innerhalb einer Komponente AWT, Swing, JavaFX & SWT 7
M TableView + Datenbank Aktualisierung AWT, Swing, JavaFX & SWT 4
N Aktualisierung des Fensters AWT Java ohne Ruckeln AWT, Swing, JavaFX & SWT 3
P Aktualisierung von jLabel in jFrames AWT, Swing, JavaFX & SWT 8
O JavaFX Aktualisierung der Scene AWT, Swing, JavaFX & SWT 1
D Swing keine JLabel-Aktualisierung bei "externem" Aufruf durch Helferklasse AWT, Swing, JavaFX & SWT 10
F Textfeld Währungszahlen und automatische Aktualisierung AWT, Swing, JavaFX & SWT 14
J Denkfehler bei Aktualisierung eines GUI AWT, Swing, JavaFX & SWT 4
S JTable nach aktualisierung - neue Zeile nicht "klickbar" AWT, Swing, JavaFX & SWT 0
T Tetris - Gui Aktualisierung AWT, Swing, JavaFX & SWT 2
Y JFormattedTextfield - Aktualisierung und Beschränkung AWT, Swing, JavaFX & SWT 4
dzim TableView - keine Aktualisierung geänderter Items AWT, Swing, JavaFX & SWT 5
D JTable Aktualisierung nach hinzufügen eines Datensatzes AWT, Swing, JavaFX & SWT 7
B Problem bei der Aktualisierung des Frames AWT, Swing, JavaFX & SWT 6
lumo SWT Resize und aktualisierung der gui AWT, Swing, JavaFX & SWT 6
B GUI Aktualisierung aus/und eventListener AWT, Swing, JavaFX & SWT 3
S Swing Aktualisierung Fensters AWT, Swing, JavaFX & SWT 7
K Modaler Dialog aber trotzdem Aktualisierung des MainFrames AWT, Swing, JavaFX & SWT 6
W Swing Aktualisierung des Bildes AWT, Swing, JavaFX & SWT 4
C JTable-Aktualisierung leidiges Thema AWT, Swing, JavaFX & SWT 18
Plastagen JTextArea CaretPosition Aktualisierung AWT, Swing, JavaFX & SWT 10
C permanente aktualisierung der Koordinaten der Maus auf einem Panel AWT, Swing, JavaFX & SWT 8
U JComboBox: (Vor)auswahl nach Aktualisierung AWT, Swing, JavaFX & SWT 2
kodela Swing Problem mit sofortiger Aktualisierung eine Textfeldes AWT, Swing, JavaFX & SWT 8
J Progressbar aktualisierung nach file übergabe AWT, Swing, JavaFX & SWT 7
H Aktualisierung Gui AWT, Swing, JavaFX & SWT 5
G Bessere Aktualisierung eines Frames AWT, Swing, JavaFX & SWT 5
P Problem bei Aktualisierung eines JPanels AWT, Swing, JavaFX & SWT 2
S Aktualisierung der GUI AWT, Swing, JavaFX & SWT 6
S Aktualisierung in regelmäßigen Abständen AWT, Swing, JavaFX & SWT 2
L Problem mit der aktualisierung von JTree und Text Area AWT, Swing, JavaFX & SWT 22
F Aktualisierung während MOUSE_PRESSED AWT, Swing, JavaFX & SWT 4
M swt - problem mit aktualisierung des tableeditors AWT, Swing, JavaFX & SWT 3
G Aktualisierung der Ausgabe in SWT AWT, Swing, JavaFX & SWT 2
A JTable - Aktualisierung und Spaltenbreite AWT, Swing, JavaFX & SWT 5
D Aktualisierung von GUI AWT, Swing, JavaFX & SWT 11
W JTextArea als Logausgabe und Aktualisierung AWT, Swing, JavaFX & SWT 3
C zu späte aktualisierung/repaint AWT, Swing, JavaFX & SWT 3
X Probleme mit aktualisierung durch Repaint() Methode AWT, Swing, JavaFX & SWT 3
R Thread-Problem (Aktualisierung von JLabel-Komponente) AWT, Swing, JavaFX & SWT 9
M problem mit textfield-aktualisierung AWT, Swing, JavaFX & SWT 4
G JScrollPane problem mit aktualisierung der daten AWT, Swing, JavaFX & SWT 3
L Aktualisierung bei JTabbedPane AWT, Swing, JavaFX & SWT 3
T Swing bei Realtime-Aktualisierung zu langsam? AWT, Swing, JavaFX & SWT 10
M JCombobox aktualisierung, beim wecheseln des Tab JTabbedPane AWT, Swing, JavaFX & SWT 3
MiMa Optimieren einer Methode zum Zentrieren von Fenstern AWT, Swing, JavaFX & SWT 0
T VerifyListener - Ersetzen einer 0 AWT, Swing, JavaFX & SWT 5
I JavaFX JavaFx-Anwendung für die Erstellung einer Windows-Anwendung? AWT, Swing, JavaFX & SWT 6
J Drag und drop aus einer JTable - bitte um Unterstützung AWT, Swing, JavaFX & SWT 2
N Dropshadow setzen bei einer Gruppe von Tiles, die sich jeweils in einer Stackpane befinden, welche in einer Gridpane angeordnet sind. AWT, Swing, JavaFX & SWT 0
M Daten zufällig Einlesen aus einer Datei (binäres Format) AWT, Swing, JavaFX & SWT 7
ExceptionOfExpectation Mit einer laufenden GUI Applikation eine Datei in dem Rechner löschen AWT, Swing, JavaFX & SWT 2
Jose05 Aus einer normalen Java Klasse eine FXML-Klasse laden AWT, Swing, JavaFX & SWT 12
Linjutsu Den Inhalten aus einer ArrayList Bilder zuweisen (Kartenspiel) AWT, Swing, JavaFX & SWT 8
H JavaFX Timeline II: Verschieben einer ImageView AWT, Swing, JavaFX & SWT 16
I Hilfe bei dem Erstellen einer SQL Abfrage aus gewählten JComboBoxen AWT, Swing, JavaFX & SWT 5
L Swing TextPanel Schrift untereinander und auf einer Höhe AWT, Swing, JavaFX & SWT 3
mananana Mögliche probleme die in einer GUI passieren Können AWT, Swing, JavaFX & SWT 6
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
Ernesto95 JavaFX Return Value nach Beendigung einer Animation AWT, Swing, JavaFX & SWT 15
melaniemueller Wortliste in einer Datei ablegen AWT, Swing, JavaFX & SWT 12
D Layout einer scene mit ListView Elementen und Zwei Textfeldern AWT, Swing, JavaFX & SWT 1
Jose05 JavaFx Fxml: GUI aus einer anderen Klasse starten AWT, Swing, JavaFX & SWT 1
U Was genau ist das Objekt einer affinentransformation? AWT, Swing, JavaFX & SWT 1
B JavaFX Prüfen ob ein Objekt sich mehrmals in einer Liste befindet AWT, Swing, JavaFX & SWT 5
mac2010 JavaFX Einbindung einer Karte AWT, Swing, JavaFX & SWT 1
donnico2 Objekte in der GUI ausgeben mit Hilfe einer DAO AWT, Swing, JavaFX & SWT 1
Kohl Jedes Objekt einer JTable um ein Zeichen verkürzen AWT, Swing, JavaFX & SWT 7
W Aufrufen einer bestimmten Scene mit if-Bedingung AWT, Swing, JavaFX & SWT 4
J Ablaufsteuerung/Anleitung machen mit JDialog und einer Zustandsmaschine AWT, Swing, JavaFX & SWT 1
missy72 JavaFX Wiederholen einer IF-Abfrage beim erneuten Öffnen einer Stage AWT, Swing, JavaFX & SWT 11
missy72 JavaFX TableView / TableColumn / ObservableList / zwei Werte in einer Zelle AWT, Swing, JavaFX & SWT 2
S JavaFX - mit Listener Veränderungen in einer TableView abhören AWT, Swing, JavaFX & SWT 3
missy72 JavaFX ObservableList in einer ArrayList speichern. AWT, Swing, JavaFX & SWT 7
HoT Sortieren von ein paar Zeilen in einer Tabelle, aber nicht die ganze Tabelle AWT, Swing, JavaFX & SWT 3
kodela Swing Element einer JComboBox ausgrauen AWT, Swing, JavaFX & SWT 3
B JavaFX Farbe eines Quadrates in einer separaten Klasse ändern AWT, Swing, JavaFX & SWT 4
H Daten aus einer XML(x83-Datei) in einem JFrame anzeigen lassen AWT, Swing, JavaFX & SWT 9
N Aufruf einer anderen Klasse durch Button ActionListener AWT, Swing, JavaFX & SWT 2
N Einer TextArea ein ScrollPane hinzufügen AWT, Swing, JavaFX & SWT 8
L JavaFX Exception nach includieren einer fxml // nested controller AWT, Swing, JavaFX & SWT 1
K Probleme bei der Erstellung und Ausführung einer Jar Datei AWT, Swing, JavaFX & SWT 2
A checkbox in einer TableView abhängig von einem anderen Celleninhalt disablen AWT, Swing, JavaFX & SWT 1
G Verknüpfung einer pdf Datei AWT, Swing, JavaFX & SWT 2
B Ausgaben einer Umrechnung vom Textfeld in ein Label AWT, Swing, JavaFX & SWT 2
F jTree und das Model aus einer eigenen Klasse AWT, Swing, JavaFX & SWT 1
D Zeilenumbruch in einer JTable AWT, Swing, JavaFX & SWT 9
N Wie kann ich zwei Grafiken in einer Oberfläche anzeigen lassen? AWT, Swing, JavaFX & SWT 8
@SupressWarnings() JavaFX Auf den Controller einer ListCell zugreifen AWT, Swing, JavaFX & SWT 4
Drachenbauer Swing Wie ändere ich den Hintergrund vom Anzeigefeld einer JComboBox, die nicht zum Hineinschreiben offen steht? AWT, Swing, JavaFX & SWT 32
H 3 verschiedene Nachrichten in einer FXML View die Infos kommen aus DB AWT, Swing, JavaFX & SWT 4
karlmasutra JavaFX Zugriff auf eine erzeugte Scene aus einer anderen Klasse AWT, Swing, JavaFX & SWT 1
S Java GUI durch variable Größe einer Map anpassen AWT, Swing, JavaFX & SWT 3
B Textfelder in einer ListView ausgeben AWT, Swing, JavaFX & SWT 13
J Searchfunktion auf einer MS Access Datenbank AWT, Swing, JavaFX & SWT 7
B Text im Tetfeld in einer TableView darstellen AWT, Swing, JavaFX & SWT 20
M Inhalte einer FlowPane AWT, Swing, JavaFX & SWT 4
W Swing JTable Zeilenumbruch innerhalb einer Zelle AWT, Swing, JavaFX & SWT 3
E Prinzip: wie man Ereignisse in einer GUI verarbeit. Frage zum Design? AWT, Swing, JavaFX & SWT 10

Ähnliche Java Themen

Neue Themen


Oben