carookee - group communication for you
Home / JavaForum / Beginner
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
3.137 User online
0 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 753 von 2963 (25%) |<   <   >   >|

Autor Gast
Datum 10.04.02, 11:11
Betreff neue Zeile an Tabelle hängen


Hallo,
ich würde gerne eine Zeile an eine Tabelle hinzufügen wenn ich auf einen Button klicke. Ich habe ein kleines Programm geschrieben, das eine Tabelle und einen Button enthält. Leider schaffe ich es partout nicht, etwas anständiges in den ActionHandler zu schreiben.
Wäre über jede Hilfe dankbar.

///////////////////////////////////////////////////////////////////////////////
///1.0 Tabelle mit Comboboxen und Textfields die nach Änderung unterhalb
///der Tabelle ausgegeben werden
///////////////////////////////////////////////////////////////////////////////

package testdesign9;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
import javax.swing.event.*;

public class Table extends JApplet {
    JTextArea txt = new JTextArea(4, 20);
    private static final String[] NAMES = {
        "JFrame","JTabbedPane","JPanel", "JTextField", "JLabel", "JRadioButton", "JCheckbox"
    };
    JTabbedPane jTabbedPane1 = new JTabbedPane();
    JPanel jPanel1 = new JPanel();
    JButton jButton2 = new JButton();
    JPanel jPanel2 = new JPanel();
    
    // The TableModel controls all the data:
    class DataModel extends AbstractTableModel {
        Object[][] data = {
            {"JFrame", "", "three", "four"},
            {"five", "six", "seven", "eight"},
            {"nine", "ten", "eleven", "twelve"},
        };
        
        // Prints data when table changes:
        class TML implements TableModelListener {
            public void tableChanged(TableModelEvent e){
                txt.setText(""); // Clear it
                for(int i = 0; i < data.length; i++) {
                    for(int j = 0; j < data[0].length; j++)
                    txt.append(data[i][j] + " ");
                    txt.append("\n");
                }
            }
        }
        public DataModel() {
            addTableModelListener(new TML());
        }
        public int getColumnCount() {
            return data[0].length;
        }
        public int getRowCount() {
            return data.length;
        }
        public Object getValueAt(int row, int col) {
            return data[row][col];
        }
        public void
        setValueAt(Object val, int row, int col) {
            data[row][col] = val;
            // Indicate the change has happened:
            fireTableDataChanged();
        }
        public boolean
        isCellEditable(int row, int col) {
            return true;
        }
    }
    public void init() {
        Container cp = getContentPane();
        
        JTable table = new JTable(new DataModel());
        
        table.getColumnModel().getColumn(0).setCellEditor(new DefaultCellEditor(new JComboBox(NAMES)));
        table.getColumnModel().getColumn(1).setCellEditor(new DefaultCellEditor(new JTextField()));
        
        jPanel1.add(new JScrollPane(table));
        cp.add(BorderLayout.SOUTH, txt);
    }
    
    public Table() {
        try {
            jbInit();
        }
        catch(Exception e) {
            e.printStackTrace();
        }
    }
    private void jbInit() throws Exception {
        jTabbedPane1.setPreferredSize(new Dimension(390, 290));
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(ActionEvent e) {
                jButton2_actionPerformed(e);
            }
        });
        jButton2.setText("Submit");
        this.getContentPane().add(jTabbedPane1, BorderLayout.WEST);
        jTabbedPane1.add(jPanel1, "jPanel1");
        jPanel1.add(jButton2, null);
        jTabbedPane1.add(jPanel2, "jPanel2");
    }
    
    void jButton2_actionPerformed(ActionEvent e)
    {
        ///////////////////////////////////////////////////////////////////////////
        ///1.1 Anfang
        ///////////////////////////////////////////////////////////////////////////
        
        //was muß hier hin?
        
        ///////////////////////////////////////////////////////////////////////////
        ///1.1 Ende
        ///////////////////////////////////////////////////////////////////////////
    }
    
    
}



 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com