The event listener will ALWAYS pass an event object as a parameter to the event handler so that the handler can know exactly what is responsible for generating the event and allowing you to get information about the event.
If you have one button and one event handler then you can disregard the event parameter. If you have ten buttons we don't want to code ten different event handlers, so we have one handler and the handler is told what was responsible for triggering the event.
Basically the event parameter tells you all about what caused the event and allows you to take action accordingly.
More accurate to say that if you define an event handler in MXML, as in <mx:Button click="clickFunc()"/> then it is optional to pass an event object with clickFunc(event), and if you do not pass it, your clickFunc() method signature does not need that argument.
But if you add an event listener with addEventListener, then the listener method signature must always tae the event object as an argument.
If this post answers your question or helps, please mark it as such.
Greg Lafrance - Flex 2 and 3 ACE certified
Flex / AIR Development, Training, and Support Services
Great explanation .Thank you very much.