Solved

How to catch right and left mouse pressed at the same time?

Posted on 2008-06-11
4
266 Views
Last Modified: 2010-03-30
Hi Experts..
 i wanna have 3 mouse pressed event
1st :  left mouse pressed
2nd : Right mouse Pressed
3rd : right and left mouse pressed

how can i handle my 3rd event(right and left pressed) in the same time...because as we know..we cant do it in the almost exact time..so that it would run the 1st event/2nd event first before running the 3rd event
so how does to avoid 1st/2nd even to occured before my 3rd?
0
Comment
Question by:iphone
4 Comments
 
LVL 92

Expert Comment

by:objects
ID: 21766136
don't think you can avoid it.
You'll need to add some logic to your code to handle it.
eg. checking if the other is already pressed when the other other is
And adding a slight delay to wait for the other to be pressed before processing the single press
0
 
LVL 8

Accepted Solution

by:
malfunction84 earned 250 total points
ID: 21766154
If you operate off of when the buttons are released rather than when they're pressed, you can detect if the other button was pressed during the interval where a button is held down.  That's your best chance of detecting when both buttons are down.

Try the following.  (I'm going to use pseudocode to speed this up.)
define flag_1 //indicates that button_1 was released while button_2 is still pressed

define flag_2 //indicates that button_2 was released while button_1 is still pressed
 

when button_1 is released {

  if (flag_2 is set)

    unset flag_2

    execute event_3

  else

    if (button_2 is still being held down)

      set flag_1

    else

      execute event_1

}
 

when button_2 is released {

  if (flag_1 is set)

    unset flag_1

    execute event_3

  else

    if (button_1 is still being held down)

      set flag_2

    else

      execute event_2

}

Open in new window

0
 
LVL 10

Expert Comment

by:margajet24
ID: 21766165

it has been a long time since i used java..

but please try this..

public void mouseClicked(MouseEvent e)
{
    if (e.getButton() == (MouseEvent.BUTTON1 | MouseEvent.BUTTON2) )
        // do something here
    else if (e.getButton() == MouseEvent.BUTTON1 )
        // do something here    
    else if (e.getButton() == MouseEvent.BUTTON2 )
        // do something here
}

           
0
 

Author Comment

by:iphone
ID: 21766177
Thx for your guys quick replies
but think malfunction84 thrown something for me to think on it
0

Featured Post

6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

Join & Write a Comment

Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
In this post we will learn how to connect and configure Android Device (Smartphone etc.) with Android Studio. After that we will run a simple Hello World Program.
Viewers will learn about the different types of variables in Java and how to declare them. Decide the type of variable desired: Put the keyword corresponding to the type of variable in front of the variable name: Use the equal sign to assign a v…
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.

760 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now