Tcl 使用[pack info]隐藏/显示带有菜单检查按钮的小部件
我想保存要隐藏的帧的信息,使其不受菜单选中按钮的影响。我得到以下错误: extra option "-in .mainframe -anchor center -expand 0 -fill x -ipadx 0 -ipady 0 -padx 0 -pady 0 -side top" (option with no value?) while executing "pack $w $winfo" (procedure "cmd_toggle" line 9) invoked from within "cmd_toggle .mainframe.l1" (menu invoke) 谢谢你抽出时间Tcl 使用[pack info]隐藏/显示带有菜单检查按钮的小部件,tcl,tk,Tcl,Tk,我想保存要隐藏的帧的信息,使其不受菜单选中按钮的影响。我得到以下错误: extra option "-in .mainframe -anchor center -expand 0 -fill x -ipadx 0 -ipady 0 -padx 0 -pady 0 -side top" (option with no value?) while executing "pack $w $winfo" (procedure "cmd_toggle" line 9) invoke
Damien不,您使用的不是
pack info
错误的方式,而是pack
本身pack$w
需要一个参数列表,而您只提供了一个它不知道的参数
解决方案是,在{*}
操作符的帮助下,将$winfo
分解成一个参数列表。把线路改成这个
pack $w {*}$winfo
给出了期望的结果
如果不使用checkbutton(需要一个变量),可以使用winfo ismapped$w
来避免全局state
变量
顺便说一句:“状态”按钮显示的是反向行为。您应该在开始时将其设置为true,并反转if条件。然后,如果已设置,则会显示标签。这是正确的,因为变量值更改后,命令被调用,因此可以更改命令中的值。否,您使用的不是
pack info
错误,而是pack
本身pack$w
需要一个参数列表,而您只提供了一个它不知道的参数
解决方案是,在{*}
操作符的帮助下,将$winfo
分解成一个参数列表。把线路改成这个
pack $w {*}$winfo
给出了期望的结果
如果不使用checkbutton(需要一个变量),可以使用winfo ismapped$w
来避免全局state
变量
顺便说一句:“状态”按钮显示的是反向行为。您应该在开始时将其设置为true,并反转if条件。然后,如果已设置,则会显示标签。这是正确的,因为变量值更改后,命令被称为,因此可以更改命令中的值。完美!谢谢你的回答和额外的提示。太好了!谢谢你的回答和额外的提示。