我已经定义了一个主窗口$mw
,我在其中放置了几个文本字段,用户可以在其中提供信息。
一旦用户按下RETURN,我想确定当时具有焦点的字段并读出其文本内容以进一步处理它。
以下是我如何定义文本字段的代码:
$mw->AddLabel (
-name => "lblSAP",
-top => 5,
-left => 10,
-width => 80,
-text => "identity no.",
);
$mw->AddTextfield ( # text field 1
-name => "txtSAP",
-pos => [ 5, 20 ],
-size => [ 80, 20 ],
-tabstop => 1,
);
$mw->AddLabel (
-name => "lblDokar",
-top => 5,
-left => 95,
-width => 40,
-text => "dokar",
);
$mw->AddTextfield ( # text field 2 (there are more)
-name => "txtDokar",
-pos => [ 90, 20 ],
-size => [ 40, 20 ],
-tabstop => 1,
-text => 'DRW',
);
我尝试了方法GetFocus()
,它返回一个句柄,但我不知道如何使用此句柄从文本字段中获取文本(我甚至不知道该方法是否返回了主窗口的手柄或得到了focust的控件: - (。
我试过这样:
my $handle = $mw->GetFocus(); # get handle of the focusse control
my $txt_text = $handle->Text(); # get text of the focussed control
那没有用。
我是否忽略了一个返回名称而不是句柄的方法,或者如何通过句柄访问控件?