如何在JTable上禁用/更改左键单击选择

时间:2013-04-11 11:07:30

标签: java swing jtable border mouseevent

我想创建一个像Total Comander一样工作的Jtable - 在左键单击选择后,一行应该得到一个虚线边框,并且应该在右键单击后选择它。

到目前为止,我使用了MouseAdapter,我可以在右键单击后选择一行,但如果我使用左键单击也会选择它。如何禁用它或更改左键单击行为以使行具有虚线边框?

这是我的MouseAdapter:

public class TableMouseListener extends MouseAdapter {

    private JTable table;

    public TableMouseListener(JTable table) {
        this.table = table;
    }

    public void mousePressed(MouseEvent e) {
        if (SwingUtilities.isLeftMouseButton(e)) {

        } else if (SwingUtilities.isRightMouseButton(e)) {
            Point p = e.getPoint();
            int rowNumber = table.rowAtPoint(p);
            ListSelectionModel model = table.getSelectionModel();
            model.setSelectionInterval(rowNumber, rowNumber);
        }
    }

}

0 个答案:

没有答案