![Tkinter操作運行手冊_第1頁](http://file4.renrendoc.com/view/4794261208db21d514af3d142d188bef/4794261208db21d514af3d142d188bef1.gif)
![Tkinter操作運行手冊_第2頁](http://file4.renrendoc.com/view/4794261208db21d514af3d142d188bef/4794261208db21d514af3d142d188bef2.gif)
![Tkinter操作運行手冊_第3頁](http://file4.renrendoc.com/view/4794261208db21d514af3d142d188bef/4794261208db21d514af3d142d188bef3.gif)
![Tkinter操作運行手冊_第4頁](http://file4.renrendoc.com/view/4794261208db21d514af3d142d188bef/4794261208db21d514af3d142d188bef4.gif)
![Tkinter操作運行手冊_第5頁](http://file4.renrendoc.com/view/4794261208db21d514af3d142d188bef/4794261208db21d514af3d142d188bef5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、Tkinter操作運行手冊該模塊(“Tk接口”)是Tk GUI工具包的標準Python接口。Tk和在大多數(shù)Unix平臺以及Windows系統(tǒng)上均可用。(Tk本身不是Python的一部分;它保存在ActiveState中。)注意已被重新命名為Python 3. 當將源代碼轉(zhuǎn)換為Python 3時,2to3工具將自動適應(yīng)導(dǎo)入。擴展內(nèi)容Python Tkinter資源 Python Tkinter主題指南提供了大量關(guān)于從Python使用Tk和鏈接到Tk上的其他信息源的信息。TKDocs廣泛的教程和一些小部件的更友好的小部件頁面。Tkinter參考:用于Python的GUI在線參考資料。來自effbo
2、t的Tkinter文檔由支持的tkinter的在線參考。Tcl / Tk手冊最新tcl / tk版本的官方手冊。由Mark Lutz 編寫的Python書籍,對Tkinter有很好的報道。繁忙Python開發(fā)人員的現(xiàn)代Tkinter由Mark Rozerman撰寫關(guān)于用Python和Tkinter構(gòu)建具有吸引力和現(xiàn)代化圖形用戶界面的內(nèi)容。Python和Tkinter編程 John Grayson的書(ISBN 1-884777-81-3)。大多數(shù)情況下,模塊都是您真正需要的,但也有一些額外的模塊可供選擇。Tk接口位于名為的二進制模塊中。該模塊包含Tk的底層接口,不應(yīng)直接由應(yīng)
3、用程序員使用。它通常是共享庫(或DLL),但在某些情況下可能會與Python解釋器靜態(tài)鏈接。除了Tk接口模塊外,還包括許多Python模塊。兩個最重要的模塊是模塊本身,還有一個模塊叫做。前者自動導(dǎo)入后者,所以要使用Tkinter,你只需要導(dǎo)入一個模塊:或者更經(jīng)常地:將類實例化沒有參數(shù)。這會創(chuàng)建一個Tk的頂層小部件,它通常是應(yīng)用程序的主窗口。每個實例都有自己關(guān)聯(lián)的Tcl解釋器。在版本2.4中更改:添加了useTk參數(shù)。該函數(shù)是一個工廠函數(shù),除了不初始化Tk子系統(tǒng)外,它創(chuàng)建的對象非常類似于該類創(chuàng)建的對象。在不希望創(chuàng)建無關(guān)的頂層窗口的環(huán)境中,或者在無法(如沒有X服務(wù)器的Unix / Linux系統(tǒng))
4、環(huán)境中驅(qū)動Tcl解釋器時,這通常很有用。由對象創(chuàng)建的對象可以通過調(diào)用其方法創(chuàng)建Toplevel窗口(并初始化Tk子系統(tǒng))。2.4版本中的新功能。其他提供Tk支持的模塊包括:ScrolledTextText小部件,內(nèi)置一個垂直滾動條in.tkColorChooserDialog,讓用戶選擇一個color.tkCommonDialogBase類,用于在這里列出的其他模塊中定義的對話框。tkFileDialogCommon對話框允許用戶指定要打開的文件或save.tkFontUtilities以幫助 使用fonts.tkMessageBoxAccess來標準Tk對話框boxes.tkSimpleDi
5、alogBasic對話框和便捷函數(shù).Tkdnd拖放支持Tkinter。 這是實驗性的,當它在Tk窗口中用Tk DND.turtleTurtle圖形取代時應(yīng)該被棄用。這些已經(jīng)在Python 3中重新命名了; 他們都是新包裝的子模塊。本節(jié)不是為Tk或Tkinter的詳盡教程而設(shè)計的。相反,它旨在作為一個制止差距,為系統(tǒng)提供一些入門指導(dǎo)。Credits:Tkinter由Steen Lumholt和Guido van Rossum撰寫。Tk由John Ousterhout在伯克利書寫。這個Life Preserver 是由弗吉尼亞大學的馬特康威編寫的。HTML渲染和一些自由編輯是由Ken Manhei
6、mer的FrameMaker版本生成的。Fredrik Lundh詳細闡述并修改了類接口描述,以使它們與Tk 4.2一致。Mike Clarkson將文檔轉(zhuǎn)換為LaTeX,并編譯了參考手冊的用戶界面章節(jié)。本部分分為兩部分:前半部分(大致)包含背景材料,后半部分可作為便于參考的鍵盤。當試圖回答“我該怎么做”這個形式的問題時,通常最好找出如何在直接Tk中做“無用”,然后將其轉(zhuǎn)換回相應(yīng)的呼叫。Python程序員通常可以通過查看Tk文檔來猜測正確的Python命令。這意味著為了使用Tkinter,你必須知道一些關(guān)于Tk的知識。這個文件不能完成這個角色,所以我們能做的最好的事情就是向您提供最好的文檔。以
7、下是一些提示:作者強烈建議獲取Tk手冊頁的副本。具體來說,目錄中的手冊頁是最有用的。該手冊頁介紹了C接口Tk庫,因此不為腳本編寫者特別有用。Addison-Wesley出版了一本名為Tcl的書和John Ousterhout的Tk Toolkit(ISBN 0-201-63337-X),這是對新手Tcl和Tk的一個很好的介紹。這本書并非詳盡無遺,對于許多細節(jié),它都遵循手冊頁。 對大多數(shù)人來說是最后的選擇,但如果沒有其他任何意義的話,它可能是一個很好的去處。擴展內(nèi)容ActiveState Tcl主頁 Tk / Tcl開發(fā)主要發(fā)生在ActiveState上。Tcl和Tk工具包 Tcl的發(fā)明人Joh
8、n Ousterhout的書。Tcl和Tk中的實用編程 Brent Welch的百科全書。類層次結(jié)構(gòu)看起來很復(fù)雜,但實際上,應(yīng)用程序員幾乎總是引用層次結(jié)構(gòu)底部的類。注意:提供這些類是為了在一個命名空間下組織某些功能。它們不是要獨立實例化的。該類,就是要在應(yīng)用程序中只有一次實例化。應(yīng)用程序員不需要明確地實例化一個實例,只要有任何其他類實例化,系統(tǒng)就會創(chuàng)建一個。這個類不意味著被實例化,它只是意味著子類化才能生成“真實”的小部件(在C +中,這被稱為“抽象類”)。為了使用這個參考資料,有時候您需要知道如何閱讀Tk的簡短段落以及如何識別Tk命令的各個部分。(請參閱將Tk的基本Tk映射到Tkinter中
9、,以了解下面的內(nèi)容。)Tk腳本是Tcl程序。像所有的Tcl程序一樣,Tk腳本只是由空格分隔的令牌列表。傳統(tǒng)知識小部件就是它的類的選項,幫助配置,和行動,使人們做有用的事情。要在Tk中創(chuàng)建一個小部件,該命令始終是以下形式:classCommand_表示要制作哪種小部件(按鈕,標簽,菜單.)_ newPathname_是此小部件的新名稱。 Tk中的所有名稱都必須是唯一的。 為了幫助執(zhí)行此操作,Tk中的窗口小部件以_pathnames命名,就像文件系統(tǒng)中的文件一樣。 調(diào)用頂級小部件root。 (期間)和孩子被更多的時期劃定界限。 例如,.myApp.controlPanel.okButton可能是一
10、個窗口小部件的名稱._options_configure窗口小部件的外觀,在某些情況下,它的行為。 選項以標志和值列表的形式出現(xiàn)。 標志前面有一個 像Unix shell命令標志一樣,并且如果值超過一個單詞,則會將值放在引號中。例如:一旦創(chuàng)建,小部件的路徑名變成新命令。這個新的Widget命令是程序員獲取新Widget執(zhí)行某些操作的句柄。在C語言中,你可以用C +表示它為someAction(fred,someOptions),你可以將它表示為fred.someAction(someOptions),在Tk中,你會說:請注意,對象名稱.fred以點開頭。正如你所期望的那樣,someAction
11、的合法值將取決于窗口部件的類:.fred禁用如果fred是一個按鈕(fred變灰),但不起作用,但如果fred是標簽,則不起作用(不支持禁用標簽 在Tk)。someOptions的合法價值取決于行動。 某些操作(如disable)不需要參數(shù),其他操作(如文本輸入框的delete命令)需要參數(shù)來指定要刪除的文本范圍。Tk中的類命令對應(yīng)于Tkinter中的類構(gòu)造函數(shù)。對象的主對象隱含在創(chuàng)建時給它的新名稱中。在Tkinter中,明確指定了主人。Tk中的配置選項在帶有數(shù)值的緊跟標簽列表中給出。在Tkinter中,選項在實例構(gòu)造函數(shù)中被指定為關(guān)鍵字參數(shù),在配置調(diào)用中被指定為keyword-args,或者
12、在字典樣式中被指定為已建立實例的實例索引。請參見設(shè)置選項中的設(shè)置選項部分。在Tk中,要在小部件上執(zhí)行操作,請使用小部件名稱作為命令,然后使用操作名稱,可能帶有參數(shù)(選項)。在Tkinter中,您可以調(diào)用類實例上的方法來調(diào)用窗口小部件上的操作。Tkinter.py模塊中列出了給定小部件可以執(zhí)行的動作(方法)。要給封裝器(幾何管理器)提供一個小部件,可以使用可選參數(shù)調(diào)用封裝。在Tkinter中,Pack類擁有所有這些功能,并且各種形式的pack命令都作為方法實現(xiàn)。所有的小部件都是從Packer中分類出來的,因此繼承了所有的打包方法。有關(guān)表格幾何管理器的其他信息,請參閱模塊文檔。從上到下:你的應(yīng)用程
13、序在這里(Python)一個Python應(yīng)用程序進行調(diào)用.Tkinter(Python模塊)這個調(diào)用(例如,創(chuàng)建一個按鈕控件)在Tkinter模塊中實現(xiàn),該模塊是用Python編寫的。這個Python函數(shù)將解析命令和參數(shù)并將它們轉(zhuǎn)換為一種形式,使它們看起來好像它們來自Tk腳本而不是Python腳本.tkinter(C)這些命令及其參數(shù)將傳遞給C在tkinter中的功能 - 注意小寫 - 擴展模塊.Tk Widgets(C和Tcl)這個C函數(shù)可以調(diào)用其他C模塊,包括組成Tk庫的C函數(shù)。Tk在C和一些Tcl中實現(xiàn)。Tk小部件的Tcl部分用于將某些默認行為綁定到小部件,并且在導(dǎo)入Python 模塊的
14、位置執(zhí)行一次。(用戶從不會看到這個階段).Tk(C)Tk Widgets的Tk部分實現(xiàn)了最終映射到. Xlib(C)Xlib庫在屏幕上繪制圖形。選項控制一些東西,比如一個小部件的顏色和邊框?qū)挾取_x項可以通過三種方式設(shè)置:在創(chuàng)建對象時,使用關(guān)鍵字參數(shù)創(chuàng)建對象后,將選項名稱視為字典索引使用config()方法更新對象創(chuàng)建后的多個attrs有關(guān)給定選項及其行為的完整說明,請參閱相關(guān)Widget的Tk手冊頁。請注意,手冊頁列出了每個窗口小部件的“標準選項”和“小部件特定選項”。前者是許多小部件通用的選項列表,后者是特定小部件特有的選項。標準選項記錄在選項(3)手冊頁上。本文檔沒有區(qū)分標準和特定于窗口小
15、部件的選項。有些選項不適用于某些類型的小部件。給定小部件是否響應(yīng)特定選項取決于小部件的類別; 按鈕有一個選項,標簽沒有。給定小部件支持的選項列在該小部件的手冊頁中,或者可以在運行時通過調(diào)用沒有參數(shù)的方法或通過調(diào)用該小部件上的方法來查詢。這些調(diào)用的返回值是一個字典,其中的鍵是作為字符串(例如,)的選項的名稱,其值是5元組。一些選項,如bg是長名稱的常見選項的同義詞(bg是“背景”的簡寫)。 傳遞config()方法的簡寫選項的名稱將返回一個2元組,而不是5元組。 傳回的2元組將包含同義詞的名稱和“真實”選項(例如(#x27;background。指數(shù)含義例0選項名稱lief1數(shù)據(jù)庫查找的選項名稱
16、lief2選項類用于數(shù)據(jù)庫查找lief3默認值ised4當前值oove例:當然,打印的字典將包括所有可用選項及其值。這只是作為一個例子。封隔器是Tk的幾何管理機制之一。幾何管理器用于指定小部件在其容器中的定位的相對位置 - 它們是相互的主人。相較于較為繁瑣placer(用于不常用,我們在這里不介紹),封隔器采用定性關(guān)系規(guī)范- above, to the left of, filling等等-和工作的一切,以確定確切位置坐標為你。任何主控件的大小由內(nèi)部“從控件”的大小決定。打包器用于控制從站窗口小部件在其打包的主站內(nèi)出現(xiàn)的位置。您可以將窗口小部件封裝到框架中,并將框架封裝到其他框架中,以實現(xiàn)您所
17、需的布局。此外,這種安排是動態(tài)調(diào)整的,以適應(yīng)配置的增量變化,一旦打包完成。請注意,窗口小部件在用幾何管理器指定幾何圖形之前不會顯示。忽略幾何規(guī)格是一個常見的早期錯誤,然后在創(chuàng)建小部件時會感到驚訝,但沒有任何內(nèi)容出現(xiàn)。例如,小部件只有在應(yīng)用打包器的方法后才會出現(xiàn)??梢允褂藐P(guān)鍵字選項/值對調(diào)用pack()方法,該對控制了窗口小部件出現(xiàn)在其容器中的位置,以及在主應(yīng)用程序窗口調(diào)整大小時的行為方式。這里有些例子:有關(guān)打包機的更多信息及其可以選擇的選項,請參閱John Ousterhout書中的手冊頁和第183頁。anchorAnchor類型。 表示封裝器將每個從器件放置在parcel.expandBoo
18、lean,0或1.fillLegal值中的位置:#x27;,#x27;,th#x27;nonepadx和ipadyA distance - 指定每個從器件的內(nèi)部填充 從屬widget.padx和padyA距離 - 指定從屬widget的每邊的外部填充。sideLegal值為:ft#x27;right#x27;top#x27;bottom國某些小部件(如文本輸入小部件)的當前值設(shè)置可以通過使用特殊選項直接連接到應(yīng)用程序變量。 這些選項是可變的,文本變量,onvalue,offvalue和值。 這種連接可以兩種方式工作:如果變量因任何原因而變化,它所連接的小部件將被更新以反映新值。不幸的是,在Tk
19、inter的當前實現(xiàn)中,不可能通過變量或文本變量選項將任意Python變量移交給小部件。 這個變量的唯一類型是從Tkinter模塊中定義的類變量中分類的變量。已經(jīng)定義了許多有用的變量的子類:StringVar,IntVar,DoubleVar和BooleanVar。 要讀取此變量的當前值,請調(diào)用get()方法,并更改其值,您可以調(diào)用set()方法。 如果你遵循這個協(xié)議,那么這個小部件將總是跟蹤這個變量的值,而不需要你做進一步的干預(yù)。例如:在Tk中,有一個實用程序命令wm用于與窗口管理器交互。 wm命令的選項允許您控制標題,位置,圖標位圖等。 在Tkinter中,這些命令已經(jīng)作為Wm類的方法實現(xiàn)
20、。 Toplevel小部件從Wm類中繼承,因此可以直接調(diào)用Wm方法。要查看包含給定窗口小部件的頂層窗口,通常可以引用窗口小部件的主窗口。當然,如果這個小部件已經(jīng)被封裝在一個框架內(nèi),那么這個主框架將不會代表一個頂層窗口。要訪問包含任意小部件的頂級窗口,可以調(diào)用該方法。該方法以下劃線開頭,表示這個函數(shù)是實現(xiàn)的一部分,而不是Tk功能的接口。以下是一些典型用法的例子:anchorLegal值是指南針的點:“n”,“ne”,“e”,“se”,“s”,“sw”,“w”,“nw”以及“center”.bitmap有八個 -in,命名位圖:, , , , , , , 。 要指定一個X位圖文件名,給出該文件的完
21、整路徑,前面帶,如“ / usr / contrib / bitmap / gumby.bit”.boolean您可以傳遞整數(shù)0或1或字符串“yes”或“不”.callback這是任何不帶參數(shù)的Python函數(shù)。例如:colorColors可以作為rgb.txt文件中X顏色的名稱,或以4位表示RGB值的字符串形式給出:“#RGB”,8位:“#RRGGBB”,12位“#RRRGGGBBB”或16位位“#RRRRGGGGBBBB”范圍,其中R,G,B在這里表示任何合法的十六進制數(shù)字。有關(guān)詳細信息,請參閱Ousterhout書籍的第160頁.cursor可以使用cursorfont.h中的標準X光標
22、名稱,而不使用XC_前綴。例如,要獲得手形光標(XC_hand2),請使用字符串“hand2”。你也可以指定你自己的位圖和掩碼文件。請參閱Ousterhout書的第179頁。距離可以在像素或絕對距離中指定屏幕距離。像素以數(shù)字和絕對距離作為字符串給出,尾部字符表示單位:c表示厘米,i表示英寸,m表示毫米,p表示打印機的點數(shù)。例如,3.5英寸表示為“3.5i”.fontTk使用列表字體名稱格式,例如courier 10 bold。正數(shù)的字體大小以點為單位;尺寸為負數(shù)的尺寸以pixels.geometry度量。這是一個widthxheight形式的字符串,其中寬度和高度以像素為單位測量大多數(shù)小部件(
23、顯示文本的小部件的字符數(shù))。例如:fred “geometry” =“200 x100”.justifyLegal 值是字符串:“l(fā)eft”,“center”,“right”和“fill”.region這是一個帶有四個空格分隔元素的字符串,這是一個合法的距離(見上文)。例如:“2 3 4 5”和“3i 2i 4.5i 2i”和“3c 2c 4c 10.4c”都是合法的區(qū)域.relief確定小部件的邊框樣式。合法值是:, , , 與 .scrollcommand這幾乎總是某個滾動條小部件的set()方法,但可以是任何只有一個參數(shù)的小部件方法。例如,請參閱Python源代碼分發(fā)中的Demo / t
24、kinter / matt / canvas-with-scrollbars.py文件.wrap:必須是“none”,“char”或“word”中的一個。通過widget命令的綁定方法,您可以監(jiān)視某些事件并在發(fā)生該事件類型時觸發(fā)回調(diào)函數(shù)。綁定方法的形式是:如下:sequence是一個表示事件目標類型的字符串。 (有關(guān)詳細信息,請參閱John Ousterhout書中的綁定手冊頁和第201頁)。當事件發(fā)生時,調(diào)用一個帶有一個參數(shù)的Python函數(shù)。 一個Event實例將作為參數(shù)傳遞。 (以這種方式部署的函數(shù)通常稱為回調(diào)。)addis可選,可以是x27;或#x27;。 傳遞一個空字符串表示這個綁定
25、是要替換這個事件關(guān)聯(lián)的任何其他綁定。 傳遞#x27;意味著此函數(shù)將被添加到綁定到此事件類型的函數(shù)列表中。例如:注意事件的widget字段在turnRed()回調(diào)中被訪問。 該字段包含捕獲X事件的小部件。 下表列出了您可以訪問的其他事件字段以及它們在Tk中的表示方式,這在引用Tk手冊頁時非常有用。許多小部件需要傳遞“索引”參數(shù)。它們用于指向Text小部件中的特定位置,或指向Entry小部件中的特定字符或指向Menu小部件中的特定菜單項。Entry widget indexes (index, view index, etc.)條目窗口小部件具有涉及正在顯示的文本中的字符位置的選項。您可以使用這些函數(shù)來訪問文本小部件中的這些特殊點:AtEnd()指的是textAtInsert()中的最后一個位置,指的是文本光標isAtSelFirst()指示選定文本的開始點的點.AtSelLast()表示所選文本的最后一個點,finallyAt(x,y)指向到像素位置x,y處的字符(對于包含單行文本的文本輸入小部件,y不使用y)。文本小部件索引文本小
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中學市場營銷專員聘請合同
- 2025年電商培訓項目申請報告
- 2025年個人施工合同規(guī)范文本
- 2025年水分計項目立項申請報告模式
- 2025年公務(wù)員勞動合同官方版
- 2025年五金制品購銷合同樣本大全
- 2025年甾體藥物項目規(guī)劃申請報告
- 2025年婚約取消財產(chǎn)恢復(fù)協(xié)議標準化范本
- 2025年個人車位共享合同樣本
- 2025官方版土地買賣合同協(xié)議范本
- 導(dǎo)向標識系統(tǒng)設(shè)計(二)課件
- 聚焦:如何推進教育治理體系和治理能力現(xiàn)代化
- 化工儀表自動化【第四章】自動控制儀表
- 數(shù)據(jù)結(jié)構(gòu)教學課件:chapter8
- 線性空間的定義與性質(zhì)
- 安全生產(chǎn)十大法則及安全管理十大定律
- 化妝品批生產(chǎn)記錄
- Excel數(shù)據(jù)透視表培訓PPT課件
- 數(shù)學八年級上浙教版3.2直棱柱的表面展開圖同步練習
- 化工車間布置原則
- 貨運中心裝卸業(yè)務(wù)外包(委外)詢價采購招投標書范本
評論
0/150
提交評論