Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories

Welcome to the new platform of Programmer's Heaven! We apologize for the inconvenience caused, if you visited us from a broken link of the previous version. The main reason to move to a new platform is to provide more effective and collaborative experience to you all. Please feel free to experience the new platform and use its exciting features. Contact us for any issue that you need to get clarified. We are more than happy to help you.

fire event manually

Hi guys, Im trying to skip a window by manually fire a button event that makes the program go to the next window (lets call it next button).

The problem is that I dont know how to fire a button event manually.

I guess that the solution comes calling the "actionPerformed"
function but the problem are the paramenters to pass it.

here is the function interface
-public void actionPerformed(ActionEvent ev);-

I hope someone can help me.
This could be very usefull when defining the flow of your program in the debuggin phases.

Thanks in advanced.
Bye CSG01



Comments

  • Good question. I wonder how it works internal too.

    But the action methode "actionPerformed" takes an
    ActionEvent. The ActionEvent takes the
    following tree params:
    1. The actual object,
    2. Some identification Id,
    3. Some string which is specifying the actual object or
    the Action.

    In code:

    class MyClass implements ActionListener{
    MyClass(){
    MyObject obj = new MyObject();
    obj.setActionListener(this); /*this represents MyClass*/
    obj.setName("nils"); /*now fire the action*/
    }
    public void actionPerformed(ActionEvent ae){
    System.out.println(ae.getActionCommand());
    System.out.println(ae.getID());
    System.out.println(ae.getClass());
    }
    }

    class MyObject{
    private ActionListener ae;
    private String name;
    public void setActionListener(ActionListener in_ae){
    ae = in_ae;
    }
    public void setName(String in_name){
    name = in_name;
    ae.actionPerformed(new ActionEvent(this,0,"New name is set."));
    }
    public static void main(String[] args){
    new MyClass();
    }
    }

    Bye, nils


  • Oups. Put the main methode into the MyClass class and remove it from MyObject.
    Just because design purpose.


Sign In or Register to comment.