我正在研究我的CapStone项目本学期毕业,并且遇到了我正在研究的程序的一些问题.该代码适用于Serendipity书商计划.我要为一个虚构的书店设计一个销售点系统.
目前,当用户编辑给定行的"数量"单元格时,我不得不尝试更新"总计"列(第5列)."数量"字段还需要验证其单元格中的值是否大于库存数量(第1列).
我还阅读了如何使用 Java教程中的表格,并在昨晚搜索了Google几个小时,试图找到一些有关如何使CellEditorListener工作的有用代码.
我之前也尝试过使用CashierPanel类实现CellEditorListener,并通过以下方式注册:
CellEditorListener listener = null;
table.getDefaultEditor(String.class).addCellEditorListener(listener);
Run Code Online (Sandbox Code Playgroud)
这种方法也不起作用.
这是我现在的代码(217行):
/* Imported Dependencies */
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import javax.swing.DefaultCellEditor;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.event.CellEditorListener;
import javax.swing.event.ChangeEvent;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableColumn;
import net.miginfocom.swing.MigLayout;
public class CashierPanel extends JFrame {
/**
* Serial Version UID
*/
private static final long serialVersionUID …Run Code Online (Sandbox Code Playgroud)