Creating methods at runtime - Programmers Heaven

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.

Creating methods at runtime

I'd like to know whether there's a way to create methods at runtime. Say, for example that I have a popup-menu, but the contents of the popup-menu changes during runtime, can I then write code for the onClick-events (which is pretty much the same for all the items in the popupmenu) for the items in the popup menu that isn't created yet? If so, how?

Many thanks for any help.
Cassiopea

Comments

  • zibadianzibadian Posts: 6,349Member
    : I'd like to know whether there's a way to create methods at runtime. Say, for example that I have a popup-menu, but the contents of the popup-menu changes during runtime, can I then write code for the onClick-events (which is pretty much the same for all the items in the popupmenu) for the items in the popup menu that isn't created yet? If so, how?
    :
    : Many thanks for any help.
    : Cassiopea
    :
    You cannot create methods at run-time, since that would mean that you have to rewrite your program while it is running. You can however link events to other components at runtime. The code of these events must be written at design-time. Here is an example:
    [code]
    procedure TForm1.PopupItemClick(Sender: TObject);
    begin
    ShowMessage(TMenuItem(Sender).Name);
    end;

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    PopupMenuItem1.OnClick := PopupItemClick;
    end;
    [/code]
    If the user clicks the Button1, the menu item gets a new OnClick() event. When the PopupMenuItem1 was created (design-time or run-time) is of no consequence for the code.
Sign In or Register to comment.