0

テーブルを更新するコードは次のとおりです。

private void UpdateTable() {
    String sql = "SELECT * FROM product";

    pst = conn.prepareStatement(sql);
    rs = pst.executeQuery();

    summaryproductTable.setModel(DbUtils.resultSetToTableModel(rs));
}

そして、これは Netbeans(7.3.1) によって生成されたコードです。isEditable を追加しました。これは、スタックオーバーフローで見つけた指示に従っているためです。

summaryproductTable = new javax.swing.JTable();

summaryproductTable.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N

summaryproductTable.setModel(new javax.swing.table.DefaultTableModel(
    new Object [][] {
        {null, null, null, null, null, null, null, null, null},
        {null, null, null, null, null, null, null, null, null},
        {null, null, null, null, null, null, null, null, null},
        {null, null, null, null, null, null, null, null, null},
        {null, null, null, null, null, null, null, null, null},
        {null, null, null, null, null, null, null, null, null},
        {null, null, null, null, null, null, null, null, null},
        {null, null, null, null, null, null, null, null, null},
        {null, null, null, null, null, null, null, null, null},
        {null, null, null, null, null, null, null, null, null}
    },
    new String [] {
        "type", "materialcode", "serialnumber", "status", "careof", "date", "name",        "accountnumber", "contactnumber"
    }
)
{public boolean isCellEditable(int row, int column){return false;}}
);



summaryproductTable.addMouseListener(new java.awt.event.MouseAdapter() {
    public void mouseClicked(java.awt.event.MouseEvent evt) {
        summaryproductTableMouseClicked(evt);
    }
});

jScrollPane1.setViewportView(summaryproductTable);

*試行錯誤の結果、JTable が編集できないことに気付きましたが、UpdateTable() メソッドを呼び出すと、再び編集可能になります。

4

1 に答える 1

0

NetBeans で、テーブルを右クリック -> プロパティ -> チェックボックスで編集可能が選択されているので、選択を解除します。

于 2013-11-13T09:27:42.627 に答える