コンポーネントに MouseListener があり、mousePressed イベントを必要とせずに mouseReleased イベントをリッスンしたいと考えています。ユーザーが別のボタン、デスクトップ、または他のウィンドウ (または実際には何か) を押してコンポーネントを離したかどうかを検出するにはどうすればよいですか?
たとえば、次の例では、「クールではない」ではなく「クール」と出力するにはどうすればよいでしょうか?
titleBar.addMouseListener(new MouseListener()
{
@Override public void mouseReleased(MouseEvent e)
{
System.out.println("cool");//Detect this
}
@Override public void mousePressed(MouseEvent e)
{
System.out.print("Not ");//Without this having to happen first
}
@Override public void mouseExited(MouseEvent e)
{
}
@Override public void mouseEntered(MouseEvent e)
{
}
@Override public void mouseClicked(MouseEvent e)
{
}
});