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/

Reply via email to