将 JButton 添加到 JTable 中的特定列



我正在尝试将JButton添加到JTable,但不查看它查看的按钮(javax.swing......)。添加按钮的正确方法是什么?

public void setTableSize(ArrayList<CarRental> List)
{
    ArrayList<CarRental> ListToPrint= List;
    DefaultTableModel model=(DefaultTableModel) PrintListTable.getModel();
    model.setRowCount(0);
    EditButton n=new EditButton();
    Edit.addActionListener(n);
    for(int j=0;j<ListToPrint.size();j++)
    {           
        model.addRow(new String[]{j+"",ListToPrint.get(j).getName(),ListToPrint.get(j).getDays()+"",ListToPrint.get(j).getSize(),ListToPrint.get(j).getCarType(),ListToPrint.get(j).WithDriver(),ListToPrint.get(j).DailyFeesDetails(),ListToPrint.get(j).ComputeTotal()+"" });         
        model.setValueAt(Edit, j, 8);
    }
}

要是这么简单就好了。大概,您希望按钮在单击时执行某些操作,因此必须将其设置为单元格编辑器,并将其设置为单元格渲染器(您的示例仅设置单元格的value,而不更改其呈现器,因此默认渲染器在其上调用toString())。

看看这个由频繁的SO贡献者@camickr编写的类。

最新更新