Perl Tk/Tcl: 小部件回调可以带参数吗
Perl Tk/Tcl: Can widget callbacks take parameters
是否可以创建一个按钮,例如,其回调采用参数?
例如
button(-text => 'Row1', -command => \&do_something_with('Row 1'));
在测试程序上试过了,好像不行。如果是这样,是否有其他方法可以实现我在上面的示例中的意图?
我的程序需要创建按钮,但事先不知道数量(取决于 .cfg 文件)。
我没能清楚地理解你的问题,但据我了解是这样的:
button(-text => 'Row1', -command => \&do_something_with('Row 1'));
ttk::button -text $row -command [list RowOpertaion $row $xyz $abc]
此处 RowOperation 是一个具有 3 个参数的过程,假设为 row、abc、xyz。
在那个过程中你可以做必要的。
您可能需要一个匿名子例程,它至少使用一个参数调用您的子例程。
button(-text => 'Row1', -command => sub {do_something_with('Row 1', @_)});
是否可以创建一个按钮,例如,其回调采用参数?
例如
button(-text => 'Row1', -command => \&do_something_with('Row 1'));
在测试程序上试过了,好像不行。如果是这样,是否有其他方法可以实现我在上面的示例中的意图?
我的程序需要创建按钮,但事先不知道数量(取决于 .cfg 文件)。
我没能清楚地理解你的问题,但据我了解是这样的:
button(-text => 'Row1', -command => \&do_something_with('Row 1'));
ttk::button -text $row -command [list RowOpertaion $row $xyz $abc]
此处 RowOperation 是一个具有 3 个参数的过程,假设为 row、abc、xyz。 在那个过程中你可以做必要的。
您可能需要一个匿名子例程,它至少使用一个参数调用您的子例程。
button(-text => 'Row1', -command => sub {do_something_with('Row 1', @_)});