Shizzl_chrizzl
Erfahrenes Mitglied
Hi leude ich hab folgendes Problem.
Ich hab 2 Klassen. Die MeasurementTable Klasse die eine Tabelle
repräsentiert und die FE_RS30 Klasse die eine Verbindung zur Datenbank herstellt
und unter anderem auch die methode loadData besitzt die über ein sql statement bestimmte daten aus der Datenbank holt und sie in einen vector "vSearch" ablegt.
Nun will ich den Vector vSearch an die Klasse MeasurmentTable übergeben damit diese den Inhalt anzeigt. Nur bekomm ichs net hin den Vector zu übergeben , weil ich später die MeasurementTable klasse als neues Objekt in der FE_RS30 klasse erzeugen will damit sie in dieser anwendung dargestellt wird. Also meine Frage is wie ich den Vector übergeb.
(Der Vector vSearch der im Moment in der MeasurementTable Klasse is nur zum testen ob die anzeige funktioniert.)
Hab den Quelltext gepostet wär nett wenn ihr mir reinschreiben würdet wie ich den bekomme sind ja normalerweise kaum zeilen code nur ich bin eben unfähig das
hinzubekommen.
2.Prob: Und ich bekomm die setValueAt Methode net hin damit die editierten Zellen gespeichert werden. Schauts euch am besten
mal an .
THx im vorraus...
import javax.swing.*;
import javax.swing.table.*;
import javax.swing.event.*;
import java.io.*;
import java.util.*;
import java.awt.*;
public class MeasureMentTable extends AbstractTableModel {
public Vector data;
protected Vector columnNames;
public MeasureMentTable(){
initVectors();
}
public void initVectors() {
columnNames = new Vector();
data = new Vector();
columnNames.add("POS.");
columnNames.add("DICKE");
columnNames.add("RS(OHM)");
columnNames.add("SPEC");
data.add("1");
data.add("3");
data.add("4");
data.add("5");
}
public int getRowCount() {
return data.size() / getColumnCount();
}
public int getColumnCount(){
return columnNames.size();
}
public String getColumnName(int columnIndex) {
String colName = "";
if (columnIndex <= getColumnCount())
colName = (String)columnNames.elementAt(columnIndex);
return colName;
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
return true;
}
public Object getValueAt(int rowIndex, int columnIndex) {
return (String)data.elementAt( (rowIndex * getColumnCount()) + columnIndex);
}
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
Vector testVec = (Vector) data.elementAt(columnIndex);
switch (columnIndex) {
case 0: String number = (String)testVec.elementAt(0);
return;
case 1: String nummer = (String)testVec.elementAt(1);
return;
case 2: String nummber = (String)testVec.elementAt(2);
return;
case 3: String numer = (String)testVec.elementAt(3);
return;
}
return;
}
}
class DataFileTable extends JPanel {
public DataFileTable() {
JTable table;
MeasureMentTable model;
setLayout(new BorderLayout());
model = new MeasureMentTable();
table = new JTable();
table.setModel(model);
JScrollPane scrollpane = new JScrollPane(table);
add(scrollpane);
}
public Dimension getPreferredSize(){
return new Dimension(700, 400);
}
public static void main(String args[]) {
JFrame frame = new JFrame("Measurement Table");
DataFileTable panel;
panel = new DataFileTable();
frame.getContentPane().add(panel);
frame.setSize(panel.getPreferredSize());
frame.setVisible(true);
}
}
Ich hab 2 Klassen. Die MeasurementTable Klasse die eine Tabelle
repräsentiert und die FE_RS30 Klasse die eine Verbindung zur Datenbank herstellt
und unter anderem auch die methode loadData besitzt die über ein sql statement bestimmte daten aus der Datenbank holt und sie in einen vector "vSearch" ablegt.
Nun will ich den Vector vSearch an die Klasse MeasurmentTable übergeben damit diese den Inhalt anzeigt. Nur bekomm ichs net hin den Vector zu übergeben , weil ich später die MeasurementTable klasse als neues Objekt in der FE_RS30 klasse erzeugen will damit sie in dieser anwendung dargestellt wird. Also meine Frage is wie ich den Vector übergeb.
(Der Vector vSearch der im Moment in der MeasurementTable Klasse is nur zum testen ob die anzeige funktioniert.)
Hab den Quelltext gepostet wär nett wenn ihr mir reinschreiben würdet wie ich den bekomme sind ja normalerweise kaum zeilen code nur ich bin eben unfähig das
hinzubekommen.
2.Prob: Und ich bekomm die setValueAt Methode net hin damit die editierten Zellen gespeichert werden. Schauts euch am besten
mal an .
THx im vorraus...
import javax.swing.*;
import javax.swing.table.*;
import javax.swing.event.*;
import java.io.*;
import java.util.*;
import java.awt.*;
public class MeasureMentTable extends AbstractTableModel {
public Vector data;
protected Vector columnNames;
public MeasureMentTable(){
initVectors();
}
public void initVectors() {
columnNames = new Vector();
data = new Vector();
columnNames.add("POS.");
columnNames.add("DICKE");
columnNames.add("RS(OHM)");
columnNames.add("SPEC");
data.add("1");
data.add("3");
data.add("4");
data.add("5");
}
public int getRowCount() {
return data.size() / getColumnCount();
}
public int getColumnCount(){
return columnNames.size();
}
public String getColumnName(int columnIndex) {
String colName = "";
if (columnIndex <= getColumnCount())
colName = (String)columnNames.elementAt(columnIndex);
return colName;
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
return true;
}
public Object getValueAt(int rowIndex, int columnIndex) {
return (String)data.elementAt( (rowIndex * getColumnCount()) + columnIndex);
}
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
Vector testVec = (Vector) data.elementAt(columnIndex);
switch (columnIndex) {
case 0: String number = (String)testVec.elementAt(0);
return;
case 1: String nummer = (String)testVec.elementAt(1);
return;
case 2: String nummber = (String)testVec.elementAt(2);
return;
case 3: String numer = (String)testVec.elementAt(3);
return;
}
return;
}
}
class DataFileTable extends JPanel {
public DataFileTable() {
JTable table;
MeasureMentTable model;
setLayout(new BorderLayout());
model = new MeasureMentTable();
table = new JTable();
table.setModel(model);
JScrollPane scrollpane = new JScrollPane(table);
add(scrollpane);
}
public Dimension getPreferredSize(){
return new Dimension(700, 400);
}
public static void main(String args[]) {
JFrame frame = new JFrame("Measurement Table");
DataFileTable panel;
panel = new DataFileTable();
frame.getContentPane().add(panel);
frame.setSize(panel.getPreferredSize());
frame.setVisible(true);
}
}