我正在使用 Netbeans 并试图找到一种方法让 IDE 为我自动生成代码。我记得之前将 JLabel 的文本绑定到 JTable 的选定行中的列,但在这种情况下,JTable 的值来自实体管理器,这很容易。我想知道即使 JTable 没有绑定到数据库,是否有办法做到这一点。
另外,还有什么办法可以做到呢?我正在考虑实现一个 ListSelectionListener,每当生成事件时,只需更新标签的文本。
我正在使用 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));
像这样的东西。可能是一个更通用的解决方案,但这应该有效。