File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Swing / AWT / SWT and the fly likes Swing Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Swing / AWT / SWT
Bookmark "Swing" Watch "Swing" New topic
Author

Swing

Mary Kate
Greenhorn

Joined: Jun 23, 2006
Posts: 1
Hi,

I am new to swing. I want to know when the button is registered with action listener interface how is actionPerformed method is called.

For example
Jbutton b=new Jbutton("New");
b.addActionListener(this);

public void actionPerformed(ActionEvent e){
}

I want to know how this actionPerformed method is called.

Thanks
Mary
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 36514
    
  16
Welcome to the Ranch.
Please check the naming policy; you will have to change your name.
Please use more specific titles for your threads so anybody looking at the display can tell what they are about.

Whenever the button is clicked, it fires an ActionEvent (a little like throwing an Exception, but more benign).
The ActionEvent is sent to whichever listener is registered with the button, and that listener sets off its actionPerformed method, with whatever is inside it.
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 36514
    
  16
. . . And if you haven't registered the listener properly, the ActionEvent disappears into the wild blue yonder never to be seen again . . .
Jared Cope
Ranch Hand

Joined: Aug 18, 2004
Posts: 243
Hi Mary,

Originally posted by Mary Kate:

I want to know how this actionPerformed method is called.


This method is called by the operating system in response to the user doing something with the mouse or keyboard (and perhaps other input devices) on that button. In my experience I've never seen code written to call this method explicitly (if that is what you are wondering).

So for example if your program is running on Windows, and you click on a JButton with your mouse, Windows will talk to the JVM giving it details of what just happened. The JVM will build the ActionEvent object and pass it into this method. Then this method will run giving you the chance to do something in response to the user clicking the button.

Hope that gives you a bit of an idea.

Cheers, Jared.


SCJP 1.4 91%, SCJP 1.5 88%, SCJD B&S
 
wood burning stoves
 
subject: Swing
 
Similar Threads
Nested Classes: When/Why Use? Static vs non-static?
JList
ActionListener code. Problem deciphering of
Button and Keyboard linking
doing same job on two or more events