in reply to Calling a TK Method by reference
But if I have to move the $ref outside as a global, doesn't that sort of defeat the purpose of defining it as a reference to the ListBox method?Well... there's not really a point in making it a reference, as a ListBox is already an object (and so, a reference too) so you should be able to copy it (as I showed in the post above).
And if you don't want to make $listbox global, make it a lexical in a slightly higher scope:
You could also return $listbox from the first sub, and then pass it to the second. Or store $listbox in an object, or create a new closure in sub_that_makes_listbox... I tend to use all four options. Use whatever you're comfortable with.# main code here... { my $listbox; sub sub_that_makes_listbox { .. }; sub sub_that_alters_listbox { .. }; }
Anyway, try looking at perlreftut and perlref for more information about references and closures.
|
|---|