我无法在我的java项目中检测到点击次数= 2(双击)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我无法在我的java项目中检测到点击次数= 2(双击)相关的知识,希望对你有一定的参考价值。

我试图听取双击jtable但鼠标监听器只接收点击次数= 1。

JTable replacedAssets = new JTable(...);
replacedAssets.addMouseListener ( new MouseAdapter ( ) {
        @Override
        public void mouseClicked ( MouseEvent e ) {
            super.mouseClicked ( e );
            if ( e.getClickCount () == 2 ) {
                rowIndex = replacedAssets.getSelectedRow ();
                columnIndex = replacedAssets.getSelectedColumn ();
                if ( rowIndex == 0 && ( columnIndex == 1 || columnIndex == 2 ) ) {
                    initial = replacedAssets.getValueAt ( rowIndex , columnIndex );
                    JOptionPane.showMessageDialog ( parent , "Editing this Field may cause error in the data causing problems." , "Error Edit Not Permitted For This Field" , JOptionPane.ERROR_MESSAGE );
                }
            }
        }
    } );

这是我的鼠标监听器Code请帮忙。 PS:它适用于JLabel。

答案

mouseClicked取代mousePressed为我工作。我相信这是因为mouseClickmousePressedmouseReleased的组合。如果鼠标在两个事件之间移动甚至像素,则不会生成事件。

replacedAssets.addMouseListener (new MouseAdapter(){
            @Override
            public void mousePressed(MouseEvent mouseEvent) {
                super.mousePressed(mouseEvent);
                JTable table = (JTable) mouseEvent.getSource();
                if (mouseEvent.getClickCount() == 2 ) {
                    System.out.println("Double click detected");
                }
           }
   });

以上是关于我无法在我的java项目中检测到点击次数= 2(双击)的主要内容,如果未能解决你的问题,请参考以下文章

状态栏区域未检测到点击手势?

如何检测双击拖动?

在 UITableViewCell 中未检测到点击手势

当 UIPopoverController 处于活动状态时,UIWebView 未检测到点击

带有子 UIView(保存内容)的 UIScrollView 未检测到点击

如何通过双击图标来执行JAVA程序?