Adr*_*ian 0 java swing exception awt jtable
renbor = tabla_proveedor.getSelectedRow();
DefaultTableModel modelo = (DefaultTableModel) tabla_proveedor.getModel();
modelo.removeRow(renbor);
Run Code Online (Sandbox Code Playgroud)
那行代码给了我一个错误,它给了我......
线程"AWT-EventQueue-0"中的异常java.lang.ClassCastException:javax.swing.JTable $ 1无法强制转换为javax.swing.table.DefaultTableModel
我该如何解决这个问题?我需要从表中删除一行.
这是我实例化tabla_proveedor的地方
tabla_proveedor=new JTable(datos_proveedor,columna_proveedor)
{
public boolean isCellEditable(int datos_proveedor, int columna_proveedor){
return false;
}
public Component prepareRenderer(TableCellRenderer r, int datos_proveedor, int columna_proveedor)
{
Component c= super.prepareRenderer(r,datos_proveedor,columna_proveedor);
return c;
}
};
Run Code Online (Sandbox Code Playgroud)
javax.swing.JTable $ 1我该怎么办?
当您将数据和列名指定为数组时,JTable会为TableModel创建一个匿名内部类."1美元"告诉你这是事实.
创建JTable的一种更简单的方法是使用带有Vectors的构造函数.如果必须使用数组,则需要手动创建DefaultTableModel(如Sanjay所建议):
DefaultTableModel model = new DefaultTableModel(data, columnNames)
JTable table = new JTable( model );
Run Code Online (Sandbox Code Playgroud)
但我使用getColumnModel().getColumn(0).setPreferredWidth(200);
这与正在使用的TableModel无关,所以这个代码仍然可以使用DefaultTableModel.
| 归档时间: |
|
| 查看次数: |
6333 次 |
| 最近记录: |