🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: borland.public.jbuilder.java.swing
Article #8855

JTable

#8855
From: sven goetgeluck
Date: Wed, 05 Jul 2000 00:00
109 lines
3573 bytes
Hi ,

must create at runtime a table with diffents count of rows , is this
possible?
all examples found have fixed rowlength , how can i insert a row ..
I use a jtable with a model

code is specified below:


import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableColumn;
import javax.swing.DefaultCellEditor;
import javax.swing.table.TableCellRenderer;
import javax.swing.table.DefaultTableCellRenderer;
 class MyTableModel extends AbstractTableModel {
        final String[] columnNames = {"Object name",
                                      "Total time",
                                      "Green time",
                                      "Yellow time",
                                      "Orange time"};
       final Object[][] data = null;

        public int getColumnCount() {
            return columnNames.length;
        }

        public int getRowCount() {
         return 0;
        }

        public String getColumnName(int col) {
            return columnNames[col];
        }


        public Object getValueAt(int row, int col) {
        return data[row][col];
    }
    public boolean isCellEditable(int row, int col)
        { return true; }
    public void setValueAt(Object value, int row, int col) {
        data[row][col] = value;
 fireTableCellUpdated(row, col);
    }

  public void addRow(Object[] rowdata)
  {
 fireTableCellUpdated(row, col);

  }
        /*
         * JTable uses this method to determine the default renderer/
         * editor for each cell.  If we didn't implement this method,
         * then the last column would contain text ("true"/"false"),
         * rather than a check box.
         */
        public Class getColumnClass(int c) {
            return getValueAt(0, c).getClass();
        }

        /*
         * Don't need to implement this method unless your table's
         * editable.
         */
    }


/////////////Panel with table on it , here i must insert het rows

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

public class workstationObjetsPanel extends JPanel {
  BorderLayout borderLayout1 = new BorderLayout();
  String[] cNames = {"ObjectName","Total time","Green time","Yellow
time","Orange time","Red time"};
  JScrollPane scrollPane = null;
  JTable objectsTable = new JTable(0,6);
  MyTableModel tableModel = null;

  public workstationObjetsPanel() {
    try  {
      jbInit();
    }
    catch(Exception ex) {
      ex.printStackTrace();
    }
  }

  private void jbInit() throws Exception {
    this.setLayout(borderLayout1);
//    this.add(objectsTable, BorderLayout.CENTER);

    Dimension dim = this.getSize();
    tableModel = new MyTableModel();
    objectsTable = new JTable(tableModel);
    scrollPane = new JScrollPane(objectsTable);
    objectsTable.setPreferredScrollableViewportSize(dim);
    this.add(scrollPane,BorderLayout.CENTER);
    Object[][] value = {{"test","test","test","test","test","test"}};

 }
}



greeting Sven
sven.goetgeluck|@pandora.be
Technical Details
Message-ID: <39633DA0.A4D28790@officeline.be>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 111d45,a00bcc41b12b3cb4,start
X-Google-Attributes: gid111d45,public
From: sven goetgeluck <sven@officeline.be>
Subject: JTable
Date: 2000/07/05
Message-ID: <39633DA0.A4D28790@officeline.be>
X-Deja-AN: 642650078
Content-Transfer-Encoding: 7bit
X-Accept-Language: en
Content-Type: text/plain; charset=us-ascii
X-Trace: 5 Jul 2000 06:42:19 -0800, 127.0.0.1
MIME-Version: 1.0
Newsgroups: borland.public.jbuilder.java.swing