我使用TableModel
制作了Jtable
,从Arraylist
查看数据Persons(name,age..ect),我需要的是当我突出显示特定行“人”,表格旁边的 TextArea
将显示有关该人“行”的一些文本..,并且每行都不同..!
我制作了jTable1MousePressed
并尝试了一些代码,但我无法弄清楚如何选择确切的行..使用这个getSelectedRow()
我无法指定什么我按的行..!我读到了 ListSelectionListener
但我不明白它!
最佳答案
您可以向表添加鼠标监听器并获取列/行。显然,请根据需要更改值以适应您的目的。我用它来确定单击的行和列以及显示弹出菜单的位置。
table.addMouseListener(getMouseAdapter());
以及 MouseAdaptor 的代码:
public MouseAdapter getMouseAdapter() {
return new MouseAdapter() {
@Override
public void mouseReleased(MouseEvent e) {
app.setLastClickedComponent(ADVTableOperations.this);
rowClicked = rowAtPoint(e.getPoint());
colClicked = columnAtPoint(e.getPoint());
if (e.isPopupTrigger() && isPopUpEnabled()) {
popUpMenu.show(e.getComponent(), e.getX(), e.getY());
}
}
@Override
public void mouseClicked(MouseEvent e) {
app.setLastClickedComponent(ADVTableOperations.this);
rowClicked = rowAtPoint(e.getPoint());
colClicked = columnAtPoint(e.getPoint());
if (e.isPopupTrigger() && isPopUpEnabled()) {
popUpMenu.show(e.getComponent(), e.getX(), e.getY());
}
}
};
}
关于java - 突出显示特定行 "person",表格旁边的 `TextArea` 将显示有关该人 "row"的一些文本..,并且每行都不同..!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30198941/