#!/usr/bin/perl use warnings; use strict; use Tk; my $mw = MainWindow->new; my $f = $mw->Frame(-width => 100, -height => 100)->pack; #$mw->bind( '' => \&print_keysym ); $f->bind( '' => \&print_keysym ); $mw->Button( -text => 'Exit', -command => sub { exit(); } )->pack; #button gets the default window focus, so we need # to give it to the frame $f->focus; # won't work without this MainLoop; sub print_keysym { my $widget = shift; my $e = $widget->XEvent; my ( $keysym_text, $keysym_decimal ) = ( $e->K, $e->N ); print "keysym=$keysym_text, numberic=$keysym_decimal\n"; }