Why Experts Exchange?

Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy
Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif
Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster
CTP, Sr Infrastructure Consultant
Ask ANY Question

Connect with Certified Experts to gain insight and support on specific technology challenges including:

Troubleshooting
Research
Professional Opinions
Ask a Question
Did You Know?

We've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE

troubleshooting Question

how to make application use getModified

Avatar of mabcoleman
mabcoleman asked on
Java
6 Comments1 Solution499 ViewsLast Modified:
I have an application that identifies which button on the mouse you clicked but I need to use the getModified method with an inputEvent object.
The actual question is : write an application that lets you determine the integer value returned by the inputEvent method getModifiers() when you click your left or right mouse button on a JFrame.
I don't know how to change the event code to accomplish this.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class JLeftOrRight extends JFrame implements MouseListener
{
 final int MAX = 20;
 String message[] = new String[MAX];
 int msgCount = 0;
 final int STARTX = 10;
   final int STARTY = 20;
   int x, y;
 
 
 
 public JLeftOrRight()
   {
      setTitle("LeftOrRight");
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      addMouseListener(this);
   }
 public void mouseClicked(MouseEvent e)
   {
      	 int whichButton = e.getButton();
      String msg;
      if(msgCount == MAX)
        clearScreen();
      message[msgCount] = "You pressed the mouse.";
      if (whichButton == MouseEvent.BUTTON1)
        msg = "button 1.";
      else 
        msg = "button 2.";
      
      message[msgCount] = message[msgCount] +
         " You used " + msg;
	   ++msgCount;
      repaint();
 
		 
    			}
			
		 public void mouseEntered(MouseEvent e)
   {
      if(msgCount == MAX)
        clearScreen();
       message[msgCount] = "You entered the frame";
       ++msgCount;
       repaint();
   }
  public void mouseExited(MouseEvent e)
   {
             if(msgCount == MAX)
        clearScreen();
      message[msgCount] = "You exited the frame";
	 ++msgCount;
      repaint();
 
	}
	 public void mousePressed(MouseEvent e)
   {
   }
 
   public void mouseReleased(MouseEvent e)
   {
   }
	  public void paint(Graphics g)
   {
      super.paint(g);
final int STARTX = 10;
   final int STARTY = 20;
   int x, y;
      x = STARTX;
      y = STARTY;
      for(int a = 0; a < msgCount; ++a)
         g.drawString(message[a], x, y += 20);
   }
 
   public void clearScreen()
   {
      msgCount = 0;
      for(int a = 0; a < MAX; ++a)
         message[a] = " ";
      repaint();
   }
	
			
	 public static void main(String[] args)
   {
      JLeftOrRight mFrame = new JLeftOrRight();
      final int WIDTH = 750;
      final int HEIGHT = 500;
      mFrame.setSize(WIDTH, HEIGHT);
 
      mFrame.setVisible(true);
   }
}
ASKER CERTIFIED SOLUTION
Avatar of CEHJ
Commented:
This problem has been solved!
Unlock 1 Answer and 6 Comments.
See Answers