我有一个包含JTable和JButton的JPanel。 所需的功能是: - 对于用户单击的表格的每一行,面板中将显示第二个表格 - 如果单击该按钮,则会出现一个弹出表
对于表格,我实现了一个像这样的鼠标监听器:
table.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
int row = table.getSelectedRow();
int col = table.getSelectedColumn();
System.out.println("Table: " + row + " " + col);
// perform some table processing here
// the new table to appear is data1
// update the content of the panel dataP
dataP.removeAll();
dataP.setLayout(new BorderLayout());
dataP.add(new JScrollPane(data1), BorderLayout.NORTH);
dataP.updateUI();
}
}
});
听众工作正常,直到我点击按钮并出现弹出表。 执行此操作后,如果我单击初始JTable,我总是得到所选行/列为-1,-1。 为什么会这样?由于桌子和按钮是两个独立的组件(也放置在不同的面板中),一个人如何影响另一个? 提前谢谢!