绑定Return键不起作用

时间:2013-12-24 15:14:50

标签: perl perltk

我正在尝试绑定键盘上的 Enter 按钮。我在Perl Tk写作。

我希望其中一件事情能够实现。

  1. 当我点击"输入"在我的键盘上,我想在程序中使用一个按钮来操作。
  2. 当我点击"输入"在我的键盘上,我想要一个子程序来运行。看到我的按钮打开子程序,任何一个人都会满足我的程序。
  3. 以下是我的相关代码:

    # Button
    my $enterbut = $find_sub->Button(
        -command => \&find_substations,
        -text => 'Find Displays',
        -background => 'gray'
    )->pack(
        -side => 'left',
        -fill => 'none',
        -ipadx => 8,
        -ipady => 1
    );
    
    # Accept "Enter" key as input
    $enterbut->bind('<Return>', \&find_substations);
    
    # Output Substation ID to Pane
    sub find_substations {
        print;
    }
    

    我尝试了几种使用bind命令的方法,但没有一种方法可以工作。

    我没有错误,但是当我按下按钮时,我的潜水艇无法操作。我开始相信 Return 可能不是我键盘上的正确按钮。可能是由于司机语言或其他原因。也许编码错误。

1 个答案:

答案 0 :(得分:2)

您在按钮上绑定 Enter 。只有在您的按钮聚焦时才会捕获它。如果在整个窗口中绑定它,在窗口中的任何位置按 Enter 都应该执行处理函数。