javaswing:如何绑定JLabel';是否将文本添加到JTable选定行中的列?

javaswing:如何绑定JLabel';是否将文本添加到JTable选定行中的列?,java,user-interface,swing,jtable,beans-binding,Java,User Interface,Swing,Jtable,Beans Binding,我正在使用Netbeans,并试图找到一种IDE自动生成代码的方法。我记得以前将JLabel的文本绑定到JTable选定行中的一列,但在这种情况下,JTable的值来自实体管理器,这非常简单。我想知道是否有办法做到这一点,即使JTable没有绑定到数据库 还有,你还能怎么做呢?我正在考虑实现ListSelectionListener,每当生成事件时,只需更新标签的文本。我认为您的第二个解决方案是最好的方法,如下所示: public class LabelSyncer implements Lis

我正在使用Netbeans,并试图找到一种IDE自动生成代码的方法。我记得以前将JLabel的文本绑定到JTable选定行中的一列,但在这种情况下,JTable的值来自实体管理器,这非常简单。我想知道是否有办法做到这一点,即使JTable没有绑定到数据库


还有,你还能怎么做呢?我正在考虑实现ListSelectionListener,每当生成事件时,只需更新标签的文本。

我认为您的第二个解决方案是最好的方法,如下所示:

public class LabelSyncer implements ListSelectionListener {

    private JLabel toSync;
    private int columnIndex;

    public LabelSyncer(JLabel toSync, int columnIndex) {

    }

    public void valueChanged(ListSelectionEvent e) {
        JTable table = (JTable) e.getSource();
        int row = table.getSelectedRow();
        toSync.setText(table.getModel().getValueAt(row, columnIndex).toString());
    }
}
然后

table.getSelectionModel().addListSelectionListener(new LabelSyncer(label, columnIndex));
像这样的。可能是一个更通用的解决方案,但这应该是可行的