【问题标题】:How to catch the maximize signal in Tk?如何捕捉 Tk 中的最大化信号?
【发布时间】:2011-01-10 05:15:44
【问题描述】:

您可以通过以下方式将命令与窗口的 X 按钮绑定:

wm protocol $windowPath WM_DELETE_WINDOW $command

如何为窗口的最大化按钮做同样的事情?

【问题讨论】:

    标签: tcl tk maximize-window


    【解决方案1】:

    在 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 属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-03
      相关资源
      最近更新 更多