作者: Keiichi Takahashi
日時: 2003/4/13(12:35)
ビットウォークの高橋です。

>  以下のような Perl/Tk スクリプトを書いています。不慣れなのでよくわから
> ないのですが、このフレーム上にてマウスをクリックするか、このウィンドウが

「フレーム上」で良いのでしたら、この場合 $top でバインドしても同じですの
で、以下のような感じでどうでしょうか(中村さんのと同じですね)。
ラベルなど特定のウィジェット上でバインドするときは、もう少し細かく考えな
ければなりません。

#!/usr/bin/perl
use warnings;
use strict;
use Tk;

main();
MainLoop();

sub main {
  my $top = new MainWindow(-title => "Test");
  my $f = $top->Frame
      ->pack(-side => 'left');
  my $lab = $f->Label(-wraplength => "4.5i",
		      -justify    => 'left',
		      -text       => "Click here or Hit [Enter] to end.")
      ->pack;

  $top->bind('<Key>', [&exit_process, Ev('K')]);
  $top->bind('<Button-1>', sub {exit;});
}

sub exit_process {
    if ($_[1] eq 'Return') {
	exit;
    }
}


-- 
Keiichi Takahashi, bitWalk Co.,Ltd.
mailto:bitwalk@...
http://members10.tsukaeru.net/bitwalk/