Arch manual pages

bindtags(3tk) Tk Built-In Commands bindtags(3tk)


bindtags - 確定對一個窗口提供那些綁定和求值的次序

bindtags window ?tagList?

bind 命令建立的一個綁定,可以關聯上一個特定的窗口如 .a.b.c,一個類的名字如 Button,關鍵字 all,或任何其他字符串。所有這些形式叫做綁定標籤(binding tags)。每個窗口包含綁定標籤的一個列表,它決定這個窗口如何處理事件。當在一個窗口中發生一個事件,依次把它提供給這個窗口的每個標籤: 對於每個標籤,執行匹配給定標籤和事件的最明確的綁定。匹配處理的詳情請參見 bind

缺省的,每個窗口有四個綁定標籤,它們依次是這個窗口的名字,這個窗口的類的名字,這個窗口的最近的頂層祖先的名字,和 all。頂層窗口缺省的只有三個標籤,因爲頂層名字與這個窗口的名字相同。bindtags 命令允許讀取和修改一個窗口的綁定標籤。

如果只用一個參數調用 bindtags,則把 window 的當前綁定標籤的集合作爲一個列表返回。如果對 bindtags 指定了 tagList 參數,則它必須是一個正確的列表;把 window 的標籤變更爲這個列表的元素。tagList 的元素可以是任意的字符串;但是,任何以一個點號開始的標籤將被作爲一個窗口的名字對待 ;如果在處理一個事件的時候不存在叫這個名字的窗口,則忽略這個事件的這個標籤。tagList 中元素的次序決定執行綁定腳本來響應事件的次序。例如,命令

bindtags .b {all . Button .b}
對叫做 .b 的一個按鈕顛倒求值綁定腳本的次序,首先調用 all 綁定,接着是 .b 的頂層(“.”)的綁定,隨後是類綁定,最後是 .b 的綁定。如果 tagList 是一個空列表則把 window 的綁定標籤返回爲上面描述的缺省狀態。

可以使用 bindtagss 命令來爲一個窗口介入任意的補充綁定標籤,或則刪除標準標籤。例如,命令

bindtags .b {.b TrickyButton . all}
.bButton 標籤替換爲 TrickyButton。這意味着與 Button 標籤相關聯的按鈕的缺省組件綁定,將不在提供給 .b,轉而提供與 TrickyButton (可能有一些新的按鈕行爲)關聯的任何綁定。

bind

binding, event, tag

寒蟬退士

2002/05/11

http://cmpp.linuxforum.net

本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh
4.0 Tk