我有一个名为“b”的非常小的 JButton,我想在单击它时而不是在释放它时做一些事情。我使用以下代码:
b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e){
//do some stuff
}
});
但我意识到,只要先按下然后松开,它就会执行我想要的操作。这怎么能按照我的方式完成? 谢谢
最佳答案
点击意味着按下并释放了一个按钮。单击按钮时会触发单击事件,并且仅当释放鼠标时按钮仍处于武装状态(鼠标在按钮范围内)时才会触发。要处理 pressed 事件,请使用低级 MouseListener
btn.addMouseListener(new MouseListener() {
@Override
public void mousePressed(MouseEvent e) {
//do some stuff
}
/*Override other methods*/
});
或者更好地使用 MouseAdapter
btn.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent e) {
//do some stuff
}
/*No need to override other methods, `MouseAdapter` already does it*/
});
关于java - JButton 按下(不释放),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16959560/