如何捕获Tk中的最大化信号?

时间:2011-01-10 05:15:45

标签: tcl tk maximize-window

您可以使用窗口的X按钮绑定命令:

wm protocol $windowPath WM_DELETE_WINDOW $command

如何对窗口的最大化按钮执行相同的操作?

1 个答案:

答案 0 :(得分:2)

X11 ICCCM setFreeDesktop set之间没有标准协议。因此,wm protocol不可能用于它。但是,您可以使用<Configure>事件来跟踪窗口的所有大小更改。请注意,如果您在顶层设置它,您还将获得该窗口内所有窗口小部件的通知,因此您应该检查该事件是否真的与顶层相关,然后才能执行此操作,可能是这样的:

bind $toplvl <Configure> {
    if {"%W" eq [winfo toplevel "%W"]} {
        ActOnResize %W %w %h [wm attributes %W -zoomed]
    }
}

您可能还想查看-fullscreen属性。