繁体   English   中英

当鼠标悬停在它上面时如何阻止JButton启用?

[英]How to stop JButton being enabled when mouse hovers over it?

我使用NetBeans创建了一个框架。 框架有两个按钮A和B.按钮A最初被禁用。 只有在单击按钮B时才会启用它。

public newFrame() {    //newFrame is the name of the frame that has buttons A&B
    initComponents();

    btn_A.disable();
}

    private void btn_BActionPerformed(java.awt.event.ActionEvent evt)
{
    btn_A.enable();
}

问题是当鼠标移过它时按钮A变为活动/启用,即使按钮B是否被点击。 我怎样才能解决这个问题?

我希望只有在单击按钮B后才能启用按钮A,而不是任何其他事件的结果。

使用btn_A.setEnabled(false)代替btn_A.disable()

btn_A.enable()是一种不推荐使用的方法。
要执行此任务,您可以将其替换为btn_A.setEnabled(false); 禁用按钮和btn_A.setEnabled(true); 启用按钮。

另外,还有一个建议是,如果您觉得发生了错误,请在您的方法中添加如下所示的语句:

    System.out.println("Some statement relevant to the method"); 

当方法实际执行时,您知道这些额外语句的主要目的。

请尝试以下代码:

button. addMouseListener(new MouseAdapter() { 
      public void mouseEntered(MouseEvent me) { 
            button.setEnable(true); 
      } 

      public void mouseExited(MouseEvent me) { 
           button.setEnable(false); 
      } 

    }); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM