folgendes Problem: Ich habe eine eigene Klasse mit folgender Methode:
public String[][] getTable()
{
PBookEntry pbe = null;
Iterator it = this.iterator();
String[][] tmp = new String[this.size()][5];
int i = 0;
while(it.hasNext())
{
pbe = (PBookEntry)it.next();
tmp[i][0] = pbe.getForename();
tmp[i][1] = pbe.getLastname();
tmp[i][2] = pbe.getPhone();
tmp[i][3] = pbe.getMobil();
tmp[i][4] = pbe.getEmail();
i++;
}
return tmp;
}
Wie gewollt liefert sie mir ein zwei dimensionales Stringarray, welches ich
gerne in einer JTable darstellen lassen würde. Mein Aufruf von
JTable tblData = new JTable(curPhoneBook.getTable(),COLHEAD);
liefert mir eine Tabelle mit der richten Anzahl von Zeilen, allerdings
befinden sich die Text nicht in den Spalten. Wer kann helfen?
Für Hilfe dankbar.
Daniel
"Daniel Völkerts" <dvoel...@web.de> wrote in message
news:9lraiv$18i4$1...@wrath.news.nacamar.de...
> Hallo Ng,
>
> folgendes Problem: Ich habe eine eigene Klasse mit folgender
Methode:
>
> Wie gewollt liefert sie mir ein zwei dimensionales Stringarray,
welches ich
> gerne in einer JTable darstellen lassen würde. Mein Aufruf von
hast du hier mal den Inhalt des StringArraysgeprüft???
> JTable tblData = new JTable(curPhoneBook.getTable(),COLHEAD);
und hier auch??
> liefert mir eine Tabelle mit der richten Anzahl von Zeilen,
allerdings
> befinden sich die Text nicht in den Spalten. Wer kann helfen?
wahrscheinlich stehen in deinem Array nur Leerstrings (sonst würds
nähmlich ne NullPointerException geben)
mfg alex
klaro habe ich das überprüft, sonst würde ich ja die ng nicht damit
belasten. *g*
Mein Objekt füllt das StringArray mit den getXXX Methoden.
auch die funktion getTable() scheint ok, deswegen bin ich ja verzweifelt.
bei mir in den büchern kann ich auch nichts dazu finden. die meisten
beispiele beziehen sich
auf anonyme klassen. das hilft mir nicht weiter...
trotzdem danke.
glg
Daniel
"Daniel Völkerts" <dvoel...@web.de> wrote in message
news:9lrcsr$19ib$1...@wrath.news.nacamar.de...
> Hallo Alexander,
>
> klaro habe ich das überprüft, sonst würde ich ja die ng nicht damit
> belasten. *g*
man kann ja nie wissen *bg*
> Mein Objekt füllt das StringArray mit den getXXX Methoden.
>
> auch die funktion getTable() scheint ok, deswegen bin ich ja verzweifelt.
> bei mir in den büchern kann ich auch nichts dazu finden. die meisten
> beispiele beziehen sich
> auf anonyme klassen. das hilft mir nicht weiter...
Hmm, versuch mal statt dem 2-d Array ein Tablemodel zu nehmen...
mfg alex
Habe das mal im JDeveloper nachgebaut:
import javax.swing.*;
import java.awt.*;
/**
* A Swing-based top level window class.
* <P>
* @author Tobias Henz
*/
public class Frame1 extends JFrame {
BorderLayout borderLayout1 = new BorderLayout();
JPanel jPanel1 = new JPanel();
JTable jTable1;
Object[] COLHEAD = new Object[5];
/**
* Constructs a new instance.
*/
public Frame1() {
super();
try {
jbInit();
}
catch (Exception e) {
e.printStackTrace();
}
}
/**
* Initializes the state of this instance.
*/
private void jbInit() throws Exception {
COLHEAD[0] = "1";
COLHEAD[1] = "2";
COLHEAD[2] = "3";
COLHEAD[3] = "4";
COLHEAD[4] = "5";
jTable1 = new JTable(this.getTable(),COLHEAD);
jPanel1.add(jTable1, null);
this.getContentPane().setLayout(borderLayout1);
this.setSize(new Dimension(400, 300));
this.getContentPane().add(jPanel1, BorderLayout.CENTER);
}
public String[][] getTable()
{
String[][] tmp = new String[5][5];
int i = 0;
while(i<5)
{
tmp[i][0] = "A";
tmp[i][1] = "B";
tmp[i][2] = "C";
tmp[i][3] = "D";
tmp[i][4] = "E";
i++;
}
return tmp;
}
}
liefert eine korrekte Tabelle. Keine Ahnung wo bei dir der Fehler liegt.
Sind die Strings wirklich nicht 'leer' ?
Gruss Toby
"Daniel Völkerts" <dvoel...@web.de> schrieb im Newsbeitrag
news:9lraiv$18i4$1...@wrath.news.nacamar.de...
danke für eure Hilfe. Wie meistens lag der Fehler näher als angenommen.
Am Anfang war der String nicht leer. ich hatte aber ne funktion geschrieben,
welche mein tempöräres Objekt wieder auf "null" zurücksetzt. dabei hat er
mir in mein Array gehauen.
also mein fehler...
danke nochmal, jetzt funktioniert es wunderbar.
dieser jdeveloper, wo bekomme ich den?
danke.
daniel
Den JDeveloper bekommst du bei Oracle. Man kann ihn auf der Webseite
herunterladen http://otn.oracle.com/index.html. Du musst dich allerdings
(kostenlos) registrieren lassen.
Wie die Lizenz für kommerzielle Nutzung genau aussieht weiss ich nicht.
Gruss Toby
"Daniel Völkerts" <dvoel...@web.de> schrieb im Newsbeitrag
news:9lro1b$1ete$1...@wrath.news.nacamar.de...
Daniel