1

親愛なるプログラマーの皆さん、こんにちは。

これは私の最初の投稿であり、私が抱えている問題の種類を説明できることを願っています. 私はドイツ人なので、クラス名はドイツ語です。参考になるコメントを入れてみました。

データベース (「buchungen」と呼ばれる) の値を JPanel 内の JTable に入れようとしています。私のJTableは表示されますが、ヘッダーのみで行は表示されません..

JTable を内部に持つ私のクラスは次のとおりです。

public class Verlauf extends SQL{

JTable table = new JTable();
DefaultTableModel model = new DefaultTableModel();


Verlauf(){

    removeAll();

    try {
        rs = stmt.executeQuery("SELECT * FROM buchungen WHERE Ausführer =     '" + kontoNr + "'");  // kontoNr equals to Ausführer in the database
    } catch (Exception e) {
        e.printStackTrace();
    }

    displayData(rs);

    repaint();
}


public void displayData(ResultSet rs)
{

    int i;
    int count;
    String a[];
    String header[] = {"BuchungsNr","Ausführer","Betrag","Aktion","Empfänger"};       //Table Header Values, change, as your wish
    count = header.length;

    //First set the Table header
    for(i = 0; i < count; i++)
    {
        model.addColumn(header[i]);
    }
    table.setModel(model);                      //Represents table Model
    add(table.getTableHeader(),BorderLayout.NORTH);

    a = new String[count];

    // Adding Database table Data in the JTable
    try
    {
        while (rs.next())
        {
            for(i = 0; i < count; i++)
            {
                a[i] = rs.getString(i+1);
            }
            model.addRow(a);                    //Adding the row in table   model
            table.setModel(model);              // set the model in jtable
        }
    }

    catch (Exception e)
    {
        JOptionPane.showMessageDialog(null, "Exception : "+e, "Error",     JOptionPane.ERROR_MESSAGE);
    }
}

もう見つけられない他の投稿からjtableのメソッドを取得しました...誰かが私を助けてくれることを願っています:)

編集: 私のデータベースへの接続は別のクラス (SQL と呼ばれる) で行われます。これは、ここで行ったのと同じ方法で他のクラスから完全に使用できるため、正常に動作します。

ごあいさつ ルーカス・ワルシッツ

4

1 に答える 1

1

ヘッダーはJTableコンテナに追加されていますが、テーブル自体は追加されていません

add(table);
于 2013-09-27T13:50:32.933 に答える