我有JTable和几个Cell作为具有Textboxes的行(只有1列) 在双击特定单元格时,用户可以编辑单元格 但我有一个单独的编辑按钮部分应用程序用于编辑单元格 因为获取getCellEditor没有“startCellEditing”方法(只有stopCellEditing存在)
如果我调用editCellAt(行,列)方法(单击编辑按钮),则删除现有内容,用户必须再次输入整个内容。
我如何得到这种行为? Inshort,而不是用户双击要编辑的单元格,他点击编辑按钮,如何实现相同的行为?
答案 0 :(得分:0)
此代码不会在按钮单击
上清除单元格内容import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Test extends JFrame {
public Test() {
DefaultTableModel tableModel = new DefaultTableModel();
tableModel.setRowCount(2);
tableModel.setColumnCount(2);
tableModel.setValueAt("Foo", 0, 0);
final JTable t = new JTable(tableModel);
JPanel comp = new JPanel(new BorderLayout());
getContentPane().add(comp);
comp.add(t, BorderLayout.CENTER);
JButton edit = new JButton("Edit");
edit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
t.editCellAt(0, 0);
}
});
comp.add(edit, BorderLayout.SOUTH);
pack();
setVisible(true);
}
public static void main(String[] args) {
new Test();
}
}