Eintragen von Personen in JTable

jofri

Mitglied
Hallo,
ich habe mir mal wieder eine Aufgabe gestellt. Ich möchte Personen mit Namen, Vornamen und Zeit in eine Tabelle (JTable) eintragen. Bisher habe ich das hier:
Java:
public class Class1 {
 
    public static void main(String[] args) {      
        String name="";
        String vorname="";
        String zeit="";
     
        int auswahl=0;
        int i=0;
        while(auswahl!=1){         
             name=JOptionPane.showInputDialog("Name");
             vorname=JOptionPane.showInputDialog("Vorname");
             zeit=JOptionPane.showInputDialog("Zeit");         
        auswahl=JOptionPane.showConfirmDialog(null,"Noch eine Person Eintragen?",null, JOptionPane.YES_NO_OPTION);
        }
     
        //Table
        JFrame frame=new JFrame();
         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
             
        String[] columnNames={"Name",
                              "Vorname",
                              "Zeit"
            };     
        Object [][] data={
                {name,vorname,zeit} 
                    };
             
        JTable table =new JTable(data, columnNames);
        JScrollPane scrollPane = new JScrollPane(table);
        frame.add(scrollPane, BorderLayout.CENTER);
        frame.setSize(300,150);
        frame.setVisible(true);     
    }
}
Allerdings wird gerade immer nur die letzte Person in der Tabell angezeigt. Ist ja auch logisch da der String immer nur den letzten Wert Speichert. Wie kann ich mehere Wert unter z.B. name speichern? Ich habe irgendwas mit Arrays gelesen habe jedoch nicht verstanden wie ich diese bei der Schleife anwende und wie ich Arrays in die Tabelle einfüge.
 
Zuletzt bearbeitet von einem Moderator:

thet1983

Top Contributor
schau mal...
ist nicht schön aber es soll ja nur die funktion zeigen ;)

Java:
package eu.sicusoft.tutorial.jtable;

import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.table.DefaultTableModel;

public class JTableDemo {

  
    static DefaultTableModel model;
    static JTable table;
    static String[]columnNames = {"Nachname", "Vorname","Datum"};
    static JButton btnAdd;
    static JTextField tfVN, tfNN, tfDatum;
  
    // erzeugt die daten
    private static void init(){
      
        model = new DefaultTableModel(columnNames, 0);
        table = new JTable(model);
      
        btnAdd = new JButton("ADD");
        btnAdd.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                // hier werden neue Daten in das MODEL geschrieben
                model.addRow(new Object[]{tfVN.getText(),tfNN.getText(),tfDatum.getText()});
                // aktualisierung
                model.fireTableDataChanged();
            }
        });
      
        tfVN = new JTextField();
        tfNN = new JTextField();
        tfDatum = new JTextField();      
    }
  
    // Panel mit textfields und einen button
    private static JPanel getControllPanel(){
      
        JPanel p = new JPanel(new GridLayout(0, 4, 10, 10));
        p.add(tfVN);
        p.add(tfNN);
        p.add(tfDatum);
        p.add(btnAdd);
        return p;
    }
  
    // main
    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                try {
                    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
                  
                    init();
                  
                    JFrame f = new JFrame("JTable Demo");
                    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                    f.getContentPane().add(new JScrollPane(table),BorderLayout.CENTER);
                    f.getContentPane().add(getControllPanel(),BorderLayout.SOUTH);
                    f.setSize(500, 500);
                    f.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
}

Ich würde generell bei Comboboxen, JTree, JTable etc immer ein eigenes oder das DefaultModel verwenden...Falls du Fragen hast einfach melden...
 

Anhänge

  • JTableDemo.PNG
    JTableDemo.PNG
    6,8 KB · Aufrufe: 22
Ähnliche Java Themen
  Titel Forum Antworten Datum
TeacherMrSSimon Schachspiel, Werte in Figur eintragen klappt nicht Java Basics - Anfänger-Themen 23
S OOP Java Eingabe in verschiedene Datenbank Tabellen eintragen Java Basics - Anfänger-Themen 7
_0815_ Problem mit dem Automatischen eintragen in Textdateien Java Basics - Anfänger-Themen 1
P Erste Schritte Wert in Liste eintragen Java Basics - Anfänger-Themen 28
D Objekte in Liste eintragen Java Basics - Anfänger-Themen 4
S Objekte in ArrayList eintragen und auslesen Java Basics - Anfänger-Themen 7
I Spieler Name eintragen und Random Gewinner Java Basics - Anfänger-Themen 4
O Werte selbst eintragen Java Basics - Anfänger-Themen 9
H Erste Schritte Proxyadressen in Firefox eintragen Java Basics - Anfänger-Themen 2
N Zufallszahl beim Eintragen Java Basics - Anfänger-Themen 2
B eigene klasse in listen eintragen Java Basics - Anfänger-Themen 6
S JDBC MySQL Connector - Element mit ' eintragen? Java Basics - Anfänger-Themen 4
D Letztes Änderungs-Datum als Version automatisch eintragen Java Basics - Anfänger-Themen 5
J Jede Zeile der Textdatei in ListUI eintragen Java Basics - Anfänger-Themen 2
B Zufallszahlen in ein Array eintragen. Java Basics - Anfänger-Themen 7
S Daten in DB eintragen - Methode Sytaxfehler Java Basics - Anfänger-Themen 11
G Eintragen von Werten in die DB Java Basics - Anfänger-Themen 3
F Termine in einen kalender eintragen. Java Basics - Anfänger-Themen 11
Q An erste Stelle in eine Queue eintragen Java Basics - Anfänger-Themen 4
E Apostroph(') in Datenbank eintragen Java Basics - Anfänger-Themen 19
B Kalender -> Termine eintragen Java Basics - Anfänger-Themen 1
D Datum in DB eintragen Java Basics - Anfänger-Themen 8
F in Registry eintragen Java Basics - Anfänger-Themen 5
H JDBC in den Klassenpfad eintragen Java Basics - Anfänger-Themen 4
D Wie Programm in Autostartordner (Windows) eintragen? Java Basics - Anfänger-Themen 6
Z daten in array eintragen Java Basics - Anfänger-Themen 12
G in eine 2-dimensionale Array eintragen? Java Basics - Anfänger-Themen 10
B Zeitgleiches Arbeiten am Code mit mehreren Personen? Java Basics - Anfänger-Themen 7
W Personen sortieren mit Comparator Java Basics - Anfänger-Themen 9
K Geburtsdaten von Mehreren Personen speichern und Alter ausgeben Java Basics - Anfänger-Themen 11
M Array von Personen anzeigen Java Basics - Anfänger-Themen 3
M Klassen Generische Klassen, Personen und Gruppen Java Basics - Anfänger-Themen 6
G Wie lege ich ein Array für 10 Personen an???? Java Basics - Anfänger-Themen 25
U Umsetzungsfrage: Personen mit mehreren "Rollen" Java Basics - Anfänger-Themen 9
M Projekt Personen Java Basics - Anfänger-Themen 10
R Finde meinen Fehler nicht! - Namen von Personen vergleichen Java Basics - Anfänger-Themen 6
S Geburtstage von Personen Java Basics - Anfänger-Themen 53
richis-fragen JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
richis-fragen JTable Header ausgeblendete (width = 0) nicht per mouseDragged aufziehen. Java Basics - Anfänger-Themen 9
richis-fragen JTable sowohl Spaltennamen wie auch Spaltenbeschriftungen Java Basics - Anfänger-Themen 7
richis-fragen JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
G JTable Listselectionlistener friert das Programm ein Java Basics - Anfänger-Themen 8
Mady Daten von JList & Combobox in JTable adden Java Basics - Anfänger-Themen 2
W Liste mit Listen in JTable darstellen Java Basics - Anfänger-Themen 1
J Zelleninhalt einer Jtable löschen Java Basics - Anfänger-Themen 2
E JTable einzelne Zelle färben Java Basics - Anfänger-Themen 2
thobren jtable arraylist Java Basics - Anfänger-Themen 12
thobren JTable Icon Java Basics - Anfänger-Themen 1
R Compiler-Fehler JTable mit XML befüllen | The constructor JTable(Object[], String[]) is undefined Java Basics - Anfänger-Themen 10
H Kapselung JProgressBar in JTable, aber getValueAt() greift nicht Java Basics - Anfänger-Themen 7
G JTable, Zeile auswählen und Ergebnis an Schaltfläche übergeben Java Basics - Anfänger-Themen 4
J Jtable Eingabe nach Klick ausserhalb der Tabelle übernehmen Java Basics - Anfänger-Themen 6
J JTable Spalteninhalt löschen Java Basics - Anfänger-Themen 1
J JTable Titel wird nicht angezeigt Java Basics - Anfänger-Themen 6
B jTable Spalte summieren Java Basics - Anfänger-Themen 7
N JTable auslesen Java Basics - Anfänger-Themen 6
O JTable in Excel mit Farben Java Basics - Anfänger-Themen 8
O Kommentar auf JTable Zelle Java Basics - Anfänger-Themen 2
M Jtable Reenderer Java Basics - Anfänger-Themen 0
O Popoup Menü im JTable richtig anzeigen Java Basics - Anfänger-Themen 6
M Jtable änderung updaten Java Basics - Anfänger-Themen 2
O JTable Suchfunktion Java Basics - Anfänger-Themen 2
M jTable bekommt null Java Basics - Anfänger-Themen 1
M JTable an andere Klasse übergeben Java Basics - Anfänger-Themen 2
M Datenbank in jTable Laden Java Basics - Anfänger-Themen 49
M Klasse in JTable einfügen Java Basics - Anfänger-Themen 7
S JTable Java Basics - Anfänger-Themen 16
S JTable mit Daten füllen Java Basics - Anfänger-Themen 7
L JTable Tagebuch Spaltenhöhe verändern Java Basics - Anfänger-Themen 3
S JTable - Filter an anderen Colums Java Basics - Anfänger-Themen 2
R JTable Suchfunktion mit SQL Daten Java Basics - Anfänger-Themen 2
C JTable update mit MySQL Datenbank Java Basics - Anfänger-Themen 1
C Best Practice JTable in MVC Pattern Java Basics - Anfänger-Themen 7
J Daten einer Textdatei in ein JTable importieren. Java Basics - Anfänger-Themen 3
A zykl. Aktualisierne JTable Java Basics - Anfänger-Themen 9
C Endlosschleife bei füllen von Daten im JTable Java Basics - Anfänger-Themen 5
C Werte aus JTable auslesen Java Basics - Anfänger-Themen 4
A Probleme beim zykl. aktulisieren von Daten in JTable Java Basics - Anfänger-Themen 3
V JTable welcher Listener ? Java Basics - Anfänger-Themen 7
D Falsche Zeile wird in JTable gelöscht Java Basics - Anfänger-Themen 6
D MySQL Abfrage in JTable speichern Java Basics - Anfänger-Themen 43
D JTable Zeile wird nicht in MySQL gelöscht Java Basics - Anfänger-Themen 16
D JTable Zeilen löschen Java Basics - Anfänger-Themen 5
C Klassen JTable wird ohne Header aufgebaut Java Basics - Anfänger-Themen 6
K (JTable) Text einer Zelle auf der linken Seite kürzel Java Basics - Anfänger-Themen 2
B Kniffel JTable Java Basics - Anfänger-Themen 5
N JTable flackert Java Basics - Anfänger-Themen 8
T JTable Daten aus txt datei Java Basics - Anfänger-Themen 3
J ArrayList wird in JTable falsch angezeigt Java Basics - Anfänger-Themen 0
X JTable mit grünen und roten Punkten Java Basics - Anfänger-Themen 2
LexeB4F DEL --> JTable Zelleninhalt Java Basics - Anfänger-Themen 3
R JTable Auslesen Java Basics - Anfänger-Themen 1
Crazynet jTable erste Zeile mit deffinierten Werten Java Basics - Anfänger-Themen 0
K Collections Sortieren nach zweiter Spalte in JTable Java Basics - Anfänger-Themen 18
J JTable Wert gleich überschreiben Java Basics - Anfänger-Themen 6
S Zeile entfernen aus JTable Java Basics - Anfänger-Themen 15
S JTable clonen Java Basics - Anfänger-Themen 5
H Best Practice PDF JTable Java Basics - Anfänger-Themen 4
S In JTable Zeile selektieren mit Mausklick Java Basics - Anfänger-Themen 16
D JTable Probleme beim Sortieren von Zahlen. Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben