【问题标题】:Get jTable row number from popup item从弹出项中获取 jTable 行号
【发布时间】:2012-02-19 18:45:09
【问题描述】:

我有一个 jTable 来自附图

右键单击一行会启动一个 jPopup,其中包含单个项目“Thread Stop”。

我想通过点击这个菜单项返回行号

如何做到这一点?

谢谢。

【问题讨论】:

  • 你打算如何处理行号?
  • 您能否添加一些代码,将 jPopup 内容“线程停止”与特定行号相关联?看来您可以正确关联它们,因此您应该能够轻松访问行号。

标签: java swing jtable jpopupmenu


【解决方案1】:

在显示弹出窗口的 MouseListener 中,只需通过 JTable 方法获取行号和列号:

  table.addMouseListener(new MouseAdapter() {
     @Override
     public void mousePressed(MouseEvent e) {
        Point p = e.getPoint();
        int row = table.rowAtPoint(p);
        int col = table.columnAtPoint(p);

        System.out.printf("row, col: [%d, %d]%n", row, col);

        // show pop-up menu here

     }
  });

【讨论】:

【解决方案2】:

TableCellEditor 的实现包括作为参数的行,但您应该仅在更新 TableModel 时采取行动,如此处的shownTablePopupEditor 是一个相关的例子。

【讨论】:

    猜你喜欢
    • 2011-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多