On approximately 3/21/2008 4:49 AM, came the following characters from the keyboard of Doug Hoffman: > I have been trying to understand how to get the -name of a button that > was clicked by the -onClick event, at the subroutine. > > I have read the win32::Gui docs over and over, read several post here > and elsewhere, but I still don't get it yet. :) > Please bear with me, I am trying to learn, but you know how that goes. > You don't get it and then all of a sudden it's all perfectly clear and > you wonder why you thought it was that difficult to begin with. My > brain seems to work really well by looking at working examples and > then figuring out how things work, but I haven't found a written > working example of this on the web so far and I didn't see an example > in the win32::gui folders in my perl install. > > Anywho. here is what I have, please be gentle :) > > I am creating a bunch of buttons on the fly from an array that is read > from a file. > All the buttons go to the same subroutine > At the subroutine I want to know the -name of the button that was > pressed and then go from there once I know the button -name. > I have no problem getting all the buttons to display and go to the > sub, the code all seems to work fine. > > Here's the basics of the button code and the button onClick sub > $Main is my window > $ButtonName comes from an array using a foreach loop and is a unique name > $ButtonNumber comes from an array and is a unique name but not the > same as $ButtonName > > ### create buttons ########################################### > $ButtonNumber = new Win32::GUI::Button($Main, > -name => "$ButtonName", > -tip => "$ButtonName", > -pos => [$posX, $posY], > -size => [15, 15], > -onClick => 'Button_Clicked', > ); > > > ### sub that all buttons go to ### > sub Button_Clicked{ > > ?????????????????????????? get button -name here. :P
my $obj = shift; # try this? Untested... $ButtonName = $obj{-name}; > > $Main->Status3->Text("$ButtonName");## display button name in status bar > } > ######################################################### > > I have read this a million times but don't understand how to proceed. > "The first parameter passed to the subroutine is a reference to the > object on which the event occured." > That's where I am lost, *how exactly* do I get the first parameter > (-name) in the form of a scalar? > Can anyone help me with a bit of code in where my question marks are > so I can get a handle on this and stop pulling out my hair. :) > > Thanks so much for any assistance > Doug > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > ------------------------------------------------------------------------ > > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Perl-Win32-GUI-Users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Perl-Win32-GUI-Users mailing list Perl-Win32-GUI-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users http://perl-win32-gui.sourceforge.net/