我设计了一个注册表单,在获得所有必要值后,我会点击提交按钮。
点击该提交按钮时,我想调用一个函数,我想将参数传递给该函数。
我已为此目的编写代码,但在获取详细信息之前首先调用该函数。(即)在以注册表单获取详细信息后,我需要将这些值传递给一个函数,我需要验证这些值
但发生的事情是,在获取详细信息之前,函数被调用。
答案 0 :(得分:3)
$button->configure(-command => sub { yourFunc($var1, $var2); });
我假设您已将表单的字段绑定到此处的变量$var1
和$var2
;修改以适合您自己的情况当然。
答案 1 :(得分:3)
在指定代码引用和绑定到窗口小部件的参数时,您有许多选项:
$w->configure( -command => [ \&subname, @args ... ] );
$w->configure( -command => [ sub { ... }, @args ... ] );
$w->configure( -command => [ 'methodname', $invocant, @args ... ] );
$w->configure( -command => [ $invocant, 'methodname', @args ... ] );
有关详细信息,请参阅Tk::callbacks POD。
答案 2 :(得分:0)
听起来像是一个vwait问题。请查看Perl / Tk文档:
$widget->waitVariable(varRef)
通过这种方式,您确定您的代码仅在修改等待变量时执行(即单击“提交”按钮时)
希望它有所帮助。