drew
drew

Reputation: 231

Mouse event with double click in java

By default MouseClicked event starts with one click. I have one in a JTextPane but I want to start with double click. Is it possible?

Upvotes: 19

Views: 55065

Answers (5)

SanalBathery
SanalBathery

Reputation: 638

    private void jEditorPane3MouseClicked(java.awt.event.MouseEvent evt) {                                          

            if (evt.getClickCount() == 2 && !evt.isConsumed()) {
                    evt.consume();
                    System.out.println("Double Click");
            }
    }

Upvotes: 3

Nguyễn Minh Vũ
Nguyễn Minh Vũ

Reputation: 440

You can compute the time lapsed between consecutive clicks. Compare it with a threshold value and decide yourself whether it is a double click or not.

Upvotes: 0

Hassingard
Hassingard

Reputation: 108

You can override the mousePressed() or mouseReleased() methods and asking if e.getClickCount() == 2 , I recommend using the mousePressed() or mouseReleased() instead of mouseClicked() method since using those will give the user more time to perform the clicks.

Upvotes: 0

Johnny Rocket
Johnny Rocket

Reputation: 1434

I believe you can extract the click count from the MouseEvent (assuming its called e)

Try this

if (e.getClickCount() == 2 && !e.isConsumed()) {
     e.consume();
     //handle double click event.
}

Upvotes: 54

xiesusu
xiesusu

Reputation: 47

I don't think there will be a solution to this, since Java can run on non-pc devices.

Most portable devices don't support double-click.

You may keep track of the moment of each mouse click and fire your own "double-click" event. But I don't think this is a good idea.

Upvotes: 3

Related Questions