develooper Front page | perl.wxperl.users | Postings from June 2008

Re: Using the Escape Key to exit the wxPerl application

Thread Previous | Thread Next
From:
Mark Dootson
Date:
June 17, 2008 10:45
Subject:
Re: Using the Escape Key to exit the wxPerl application
Message ID:
4857F82C.5050806@znix.com
Hi,

The in-built 'hot key' processing in wxPerl associates hot-keys with 'commands' (for example, menu items or buttons)

So, if you had a menu command "File->Exit", you might specify the text label for the Exit menuitem as:

"E&xit\tCtrl+X"

This would give you the usual Alt, F, X route to exit, and additionally Ctrl+X would cause the command event to trigger. From my reading of the docs, you can't specify 'Esc' alone in this way (it would have to be Ctrl+ESC or similar with Alt or shift).

So, to do what you want, you need an accelerator table.

See docs for wxAcceleratorEntry and wxAcceleratorTable.

You want to add keycode WXK_ESCAPE as accelerator entry for Exit menuitemid.

I can't put my hands on any working example code, but I'm pretty sure following none tested code would work.


my $table = Wx::AcceleratorTable->new( [wxACCEL_NORMAL, WXK_ESCAPE, $exitmenuitemid] );
$frame->SetAcceleratorTable( $table );


Regards

Mark



James McDonald wrote:
> 
> I would like to close my application by pressing the escape key.
> 
> I know I have to define the escape key press event and specify a sub 
> routine that will trigger when I press escape. However I haven't been 
> able to google an example.
> 
> Could anyone point me in the right direction?
> 
> 
> 
> 



Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About