java swing中插入JTable单元格的组合框的操作事件

java swing中插入JTable单元格的组合框的操作事件,java,swing,combobox,jtable,netbeans-platform,Java,Swing,Combobox,Jtable,Netbeans Platform,我正在将一个组合框添加到表的第三列,因此..每次添加新行时,它将创建一个新的组合框,并从vector1中添加项目 TableColumn ProfileCol = Table.getColumnModel().getColumn(3); ProfileCol.setCellEditor(new tableList(vector1)); tableList是下面提到的一个类,它扩展了DefaultcellEditor,其构造函数方法是 public tableList(java.util.Vec

我正在将一个组合框添加到表的第三列,因此..每次添加新行时,它将创建一个新的组合框,并从vector1中添加项目

TableColumn ProfileCol = Table.getColumnModel().getColumn(3);
ProfileCol.setCellEditor(new tableList(vector1));
tableList是下面提到的一个类,它扩展了DefaultcellEditor,其构造函数方法是

public tableList(java.util.Vector v) {
    super(new JComboBox(v));
我的问题是如果我写了一个动作

Table.addMouseListener(new java.awt.event.MouseAdapter() {
    @Override    
    public void mouseClicked(java.awt.event.MouseEvent evt) {
        int row = Table.rowAtPoint(evt.getPoint());
        int col = Table.columnAtPoint(evt.getPoint());
        if (row >= 0 && col ==3) {

        }
    }
});
它不会被触发

  • 我需要一个代码,将在组合框中的每一个项目选择火
  • 我需要一个代码,允许我动态更新插入到表中的组合框的内容
  • 请帮忙

    每次我向表中添加新行时,都会生成一个新的组合框。那么,我如何向它们写入一个列出的操作呢

    您不应该使用ActionListener

    您有三种选择:

  • 重写TableModel的
    setValue(…)
    方法以进行处理
  • 将TableModelListener添加到TableModel。然后在生成TableModelEvent时进行处理
  • 使用表上的按钮来处理处理

  • 为什么…,有什么问题吗,问题出在哪里,你不需要代码t…,你不需要MouseListener,为了更好的帮助,在这里阅读Oracle官方教程-如何使用表之前,尽快发布一个SSCCE/MCVE/MCTRE,简短,可运行,可编译,带有硬编码的JTable/xxxttablemodel值,将组合框部分作为编辑器,例如,工作代码,提示覆盖模型中的setValueAt()。您必须编辑问题,以获得潜在答案。
    1)我需要为组合框中的每个项目选择触发的代码???
    -->what,where,how,此事件在JTable内部结束或
    2)我需要一个代码,该代码将允许我动态更新插入表中的combobox的内容
    -->您的意思是可编辑的JComboBox还是我编写的侦听器代码能够在我单击已插入combobox的第三列以外的任何单元格时触发。。我的实际目的是..如果我选择组合框中的任何项目(插入表的一列),我必须从数据库中获取与之相关的其他数据。。所以…我需要转到一个函数,如果我在组合框中选择一个项目,它将被触发。我希望你现在就知道了。如果我单击第三列以外的任何单元格==ListSelectionListener
    Table.addMouseListener(new java.awt.event.MouseApter(){@Override public void mouseClicked(java.awt.event.MouseEvent evt){int row=Table.rowAtPoint(evt.getPoint());int col=Table.columnAtPoint(evt.getPoint());if(row>=0&&col>=0){}}};