首頁 / CompScience / Programming / Languages / Python / 繫結及事件

繫結及事件

[ Next: index參數 | Previous: Tk選項資料型別 | 內容 ]


繫結及事件

來自元件命令的 bind 方法允許你可以注意特定的事件以及可以有一個回呼函式在事件型態發生時觸發,bind方法的格式是:

def bind(self, sequence, func, add=''):

在這裡:

sequence
是一個表示事件的目標種類的字串(查看bind線上文件及John Ousterhout書的p.201)。
func
是python函式,它有一個引數,並且在事件發生時被叫喚,事件的實體會當作引數傳遞(函式展開這種方式就是我們所知的回呼)。
add
是選擇性的,不是 “” 就是”+”,傳遞一個空的字串表示這個繫結會去取代跟這個事件有關的任何其他的繫結,傳遞 “+”意味著這個函式是要增加到與這種事件型態有密切關係的函式列表。

舉例:

def turnRed(self, event):

event.widget[“activeforeground”] = “red”
self.button.bind(“”, self.turnRed)

注意這個事件的元件欄位是如何在turnRen回呼中被存取,這個欄位含有元件來捕捉X事件,下面的表格列出你可以存取得其他事件欄位,以及他們在Tk中如何表示,這在參考Tk線上文件時很有用。

Tk	Tkinter 事件欄位 	    Tk  Tkinter 事件欄位
--	-------------------		--	-------------------
%f	focus				%A	char
%h	height				%E	send_event
%k	keycode				%K	keysym
%s	state				%N	keysym_num
%t	time				%T	type
%w	width				%W	widget
%x	x				%X	x_root
%y	y				%Y	y_root
馬上成為工作達人的Fans

About ㄚ琪

工作達人Fun Taiwan的創辦者及總編,可以在這裡更認識他。

3 comments

發表迴響

你的電子郵件位址並不會被公開。 Required fields are marked *

*

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料

Scroll To Top