日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python GUI編程學習筆記之tkinter事件綁定操作詳解

瀏覽:36日期:2022-07-31 16:46:48

本文實例講述了Python GUI編程學習筆記之tkinter事件綁定操作。分享給大家供大家參考,具體如下:

相關內容: command bind protocol

首發時間:2018-03-04 19:26

command: command是控件中的一個參數,如果使得command=函數,那么點擊控件的時候將會觸發函數 能夠定義command的常見控件有: Button、Menu… 調用函數時,默認是沒有參數傳入的,如果要強制傳入參數,可以考慮使用lambda

from tkinter import *root=Tk()def prt(): print('hello')def func1(*args,**kwargs): print(*args,**kwargs)hello_btn=Button(root,text='hello',command=prt)#演示hello_btn.pack()args_btn=Button(root,text='獲知是否button事件默認有參數',command=func1)#獲知是否有參數,結果是沒有args_btn.pack()btn1=Button(root,text='傳輸參數',command=lambda:func1('running'))#強制傳輸參數btn1.pack()root.mainloop()bind: bind的用法:控件.bind(event, handler),其中event是tkinter已經定義好的的事件,handler是處理器,可以是一個處理函數,如果相關事件發生, handler 函數會被觸發, 事件對象 event 會傳遞給 handler 函數 基本所有控件都能bind 常見event有: 鼠標單擊事件:鼠標左鍵點擊為 <Button-1>, 鼠標中鍵點擊為 <Button-2>, 鼠標右鍵點擊為 <Button-3>, 向上滾動滑輪為 <Button-4>, 向下滾動滑輪為 <Button-5>. 鼠標雙擊事件.:鼠標左鍵點擊為 <Double-Button-1>, 鼠標中鍵點擊為 <Double-Button-2>, 鼠標右鍵點擊為 <Double-Button-3>. 鼠標釋放事件:鼠標左鍵點擊為 <ButtonRelease-1>, 鼠標中鍵點擊為 <ButtonRelease-2>, 鼠標右鍵點擊為 <ButtonRelease-3>. 鼠標相對當前控件的位置會被存儲在 event 對象中的 x 和 y 字段中傳遞給回調函數. 鼠標移入控件事件:<Enter> 獲得焦點事件:<FocusIn> 鼠標移出控件事件: <Leave> 失去焦點事件:<FocusOut> 鼠標按下移動事件:鼠標左鍵點擊為 <B1-Motion>, 鼠標中鍵點擊為 <B2-Motion>, 鼠標右鍵點擊為 <B3-Motion>. 鼠標相對當前控件的位置會被存儲在 event 對象中的 x 和 y 字段中傳遞給回調函數. 鍵盤按下事件:<Key>,event中的keysym ,keycode,char都可以獲取按下的鍵【其他想要獲取值的也可以先看看event中有什么】 鍵位綁定事件:<Return>回車鍵,<BackSpace>,<Escape>,<Left>,<Up>,<Right>,<Down>……. 控件大小改變事件:<Configure>,新的控件大小會存儲在 event 對象中的 width 和 height 屬性傳遞. 有些平臺上該事件也可能代表控件位置改變. Event中的屬性: widget:產生事件的控件 x, y:當前鼠標的位置 x_root, y_root:當前鼠標相對于屏幕左上角的位置,以像素為單位。 char:字符代碼(僅限鍵盤事件),作為字符串。 keysym:關鍵符號(僅限鍵盤事件)。 keycode:關鍵代碼(僅限鍵盤事件)。 num:按鈕號碼(僅限鼠標按鈕事件)。 width, height:小部件的新大小(以像素為單位)(僅限配置事件)。 type:事件類型。

from tkinter import *root=Tk()root.geometry('200x200')text=Text(root)text.pack()def func(event): print(event)def func_release(event): print('release')#單擊# text.bind('<Button-1>',func)# root.bind('<Button-1>',func)#雙擊# text.bind('<Double-Button-1>',func)# 鼠標釋放# text.bind('<ButtonRelease-1>',func_release)#鼠標移入# text.bind('<Enter>',func)#鼠標按住移動事件# text.bind('<B1-Motion>',func)#鍵盤按下事件# text.bind('<Key>',func)#鍵位綁定事件# def func3(event):# print('你按下了回車!')# text.bind('<Return>',func3)#實現的一個拖拽功能def func4(event): # print(event) x=str(event.x_root) y=str(event.y_root) root.geometry('200x200+'+x+'+'+y)text.bind('<B1-Motion>',func4)root.mainloop()

補充:如果想要傳參,可以使用lambda:

text.bind('<Button-1>',lambda event:func(event,'hello'))

Python GUI編程學習筆記之tkinter事件綁定操作詳解

Python GUI編程學習筆記之tkinter事件綁定操作詳解

protocol: protocol的使用:控件.protocol(protocol,handler),其中控件為窗口對象(Tk,Toplevel) 常見protocol有: WM_DELETE_WINDOW:最常用的協議稱為WM_DELETE_WINDOW,用于定義用戶使用窗口管理器明確關閉窗口時發生的情況。如果使用自己的handler來處理事件的話,這時候窗口將不會自動執行關閉 WM_TAKE_FOCUS,WM_SAVE_YOURSELF:[這兩個不知道什么來的。] 更多需參考ICCCM文檔 注意:要留心協議的寫法,在作為字符串填入時不要加多余的空格

from tkinter import *import tkinter.messageboxroot=Tk()root.geometry('200x200')def func1(): if tkinter.messagebox.askyesno('關閉窗口','確認關閉窗口嗎'): root.destroy()root.protocol('WM_DELETE_WINDOW',func1)root.mainloop()

想要了解更多,可以參考tkinter的官方文檔:http://effbot.org/tkinterbook/

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python Socket編程技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設計有所幫助。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲图片久久| 欧美激情日韩| 伊人网在线播放| 一区在线免费观看| 久久99视频| 国产精品99在线观看| 久久精品国产免费| 精品久久99| 精品视频一二| 毛片在线网站| 在线日韩一区| 亚洲专区欧美专区| 日韩制服丝袜av| 婷婷久久免费视频| 国产日产精品一区二区三区四区的观看方式| 福利一区在线| 日韩电影免费网址| 欧美日韩中文字幕一区二区三区| 欧美成人午夜| 亚洲婷婷丁香| 欧美激情视频一区二区三区免费| 国产激情在线播放| 国产主播一区| 爽好多水快深点欧美视频| 视频在线在亚洲| 日韩三级一区| 国产精品成人一区二区网站软件| 成人免费一区| 亚洲精品2区| 日韩高清欧美激情| 国模大尺度视频一区二区| 欧美亚洲国产精品久久| 日韩中文字幕一区二区三区| 国产探花在线精品| 日韩在线综合| 在线精品视频一区| 国产高清精品二区| 激情综合网址| 日本午夜精品| 久久精品国产99国产| 亚洲www啪成人一区二区| 在线亚洲国产精品网站| 国产欧美高清视频在线| 蜜臀久久精品| 免费看精品久久片| 精品午夜av| 69堂免费精品视频在线播放| 日本久久二区| 国产精品啊啊啊| 国产黄大片在线观看| 欧美午夜不卡| 国产精品欧美在线观看| 亚洲高清二区| 国产欧美日韩精品一区二区免费 | 成人啊v在线| 先锋影音久久久| 精品国产美女a久久9999| 蘑菇福利视频一区播放| 久久亚洲黄色| 欧美日韩四区| 日本不卡视频在线观看| 国产高潮在线| 亚洲免费专区| 成人精品天堂一区二区三区| 亚洲美女久久| 亚洲爱爱视频| 久久精品97| 午夜影院欧美| 精品欧美日韩精品| 日本亚洲视频| 一区二区小说| 国产精品成人a在线观看| 亚欧成人精品| 米奇777超碰欧美日韩亚洲| 国产黄色一区| 亚洲精品美女91| 亚洲大片在线| 欧美精品第一区| 亚洲一区黄色| 波多野结衣久久精品| 欧美在线首页| 99国产成+人+综合+亚洲欧美| 精品国产欧美| 国产欧美日韩精品一区二区免费 | 亚洲一区亚洲| 成人日韩精品| 精品一级视频| 国产精品亚洲四区在线观看| 日韩专区欧美专区| 久久国产电影| 久久精品国产福利| 欧美天堂一区| 日韩毛片一区| 亚州国产精品| 综合日韩在线| 亚洲少妇一区| 国内精品福利| 色婷婷久久久| 日韩在线欧美| 日韩美女一区二区三区在线观看| 免费精品一区| 国产伦精品一区二区三区千人斩| 蜜桃视频第一区免费观看| 婷婷亚洲五月| 亚洲午夜av| 国产伦精品一区二区三区千人斩| 伊人久久高清| 都市激情国产精品| 国产精品成人一区二区不卡| 麻豆国产一区| 国产精品毛片aⅴ一区二区三区| 日本伊人午夜精品| 亚洲精品日本| 亚洲香蕉久久| 人人爽香蕉精品| 日韩午夜免费| 美女国产一区| 视频一区视频二区中文字幕| 亚洲一区免费| 快she精品国产999| 亚洲欧美日韩在线观看a三区 | 日韩综合在线| 成人午夜毛片| 麻豆mv在线观看| 中国字幕a在线看韩国电影| 电影91久久久| 日韩国产一区| 久久亚洲国产| 电影91久久久| 国产成人精选| 电影亚洲精品噜噜在线观看| 久久久国产亚洲精品| av资源新版天堂在线| 国产成人免费视频网站视频社区| 国产精品一区二区精品视频观看| 国产一精品一av一免费爽爽| 69精品国产久热在线观看| 日韩一区二区三区免费视频| 精品视频自拍| 国产亚洲观看| 视频一区中文字幕精品| 欧美日韩18| 亚洲精品一区二区妖精| 久久国产精品免费精品3p | 亚洲网址在线观看| 美女精品视频在线| 日韩精品电影| 日韩精品2区| 国产成人精品福利| 国产精品一区二区av日韩在线| 视频一区免费在线观看| 91高清一区| 久久蜜桃av| 热三久草你在线| 五月天激情综合网| 亚洲欧美不卡| 免费久久99精品国产自在现线| 欧洲毛片在线视频免费观看| 欧美精品羞羞答答| 日韩中文字幕不卡| 国产日韩欧美在线播放不卡| 亚洲综合中文| 欧美国产91| 日韩三区四区| 国产精品一区亚洲| 国产欧美激情| 国产精品久久久久久久久久妞妞| 精品一区二区三区视频在线播放| 欧美交a欧美精品喷水| 国产盗摄——sm在线视频| 91偷拍一区二区三区精品| 亚洲欧美日韩专区| 日韩国产精品久久久久久亚洲| 98精品久久久久久久| 日韩专区视频网站| 少妇精品久久久一区二区| 日韩激情视频网站| 亚洲精品欧洲| 好看不卡的中文字幕| 狠狠久久伊人| 精品99久久| 日韩在线麻豆| 欧美日韩夜夜| 国产欧美日韩一区二区三区在线| 影视先锋久久| 蜜臀久久久久久久| 国产手机视频一区二区| 欧美日韩精品一区二区视频| 五月天久久久| 欧美久久天堂| 欧美中文一区二区| 精品深夜福利视频| 日韩中文影院| 欧洲一区二区三区精品| а√天堂8资源在线| 国产va免费精品观看精品视频| 麻豆国产91在线播放| 97在线精品| 亚洲国产日韩欧美在线| 麻豆久久久久久|