python3內置的tkinter參數釋疑



最近涉及到需要實現一個桌面UI的小游戲,所以就翻看了一些文檔。

當然有介紹使用pyQT5的,但是本機安裝的是python3.4,不想卸載掉這個版本,暫時還不能使用pyQT5.

pyQT5需要python3.5及以上的版本才能行。

所以就使用python自帶的tkinter了。

總的來說,圖形界面的使用基本都是相通的,只要學通一個,其他的也會非常方便的入門。

祝各位能夠找到自己所需,那么,我這篇文章也就還算有一些價值了。

tkinter是Tk interface代表着圖形工具接口,當前python3后安裝自帶的圖形包。
Tcl(最早稱為“工具命令語言”"Tool Command Language"),Tk 是 Tcl“圖形工具箱”的擴展,它提供各種標准的 GUI 接口項,以利於迅速進行高級應用程序開發,ttk 是Tk themed 代表有專用主題的圖形工具箱。

本文檔主要介紹了一些圖形控件的參數使用,並沒有將所有的方法都一一列出,有需要進一步學習的,可以直接查看源碼文件,也可以查看我在最后附上的鏈接。

使用方式
import tkinter
或者,通常會以如下的方式導入
from tkinter import *

介紹一些類:
Wm : Windows manager 窗口管理
Misc :內置方法定義內部部件常用方法的基類
Variable :變量,子類有 StringVar, IntVar, DoubleVar, BooleanVar
CallWrapper :
Tk :構件
Pack :位置填充
Place :位置設定
Grid :網格化位置
BaseWidget :基礎構件
Widget(BaseWidget, Pack, Place, Grid)


tkinter.scrolledtext
Text widget with a vertical scroll bar built in.
內置垂直滾動條的文本小部件。
tkinter.colorchooser
Dialog to let the user choose a color.
讓用戶選擇顏色的對話框。
tkinter.commondialog
Base class for the dialogs defined in the other modules listed here.
其他模塊中定義的對話框的基類。
tkinter.filedialog
Common dialogs to allow the user to specify a file to open or save.
允許用戶指定要打開或保存的文件的通用對話框。
tkinter.font
Utilities to help work with fonts.
幫助字體工作的實用工具。
tkinter.messagebox
Access to standard Tk dialog boxes.
訪問標准TK對話框。
tkinter.simpledialog
Basic dialogs and convenience functions.
基本對話框和方便功能。
tkinter.dnd
Drag-and-drop support for tkinter. This is experimental and should become deprecated when it is replaced with the Tk DND.
Tkinter支持拖放。但是,這是實驗性的。應該成為過時的,應當被TK DND取代。
turtle
Turtle graphics in a Tk window.
海龜圖形在傳統的窗口。 ???


Tk was written by John Ousterhout while at Berkeley.
Tkinter was written by Steen Lumholt and Guido van Rossum.
================================================================

import tkinter as tk

class Application(tk.Frame):
    def __init__(self, master=None):
        super().__init__(master)
        self.pack()
        self.create_widgets()

    def create_widgets(self):
        self.hi_there = tk.Button(self)
        self.hi_there["text"] = "Hello World\n(click me)"
        self.hi_there["command"] = self.say_hi
        self.hi_there.pack(side="top")

        self.quit = tk.Button(self, text="QUIT", fg="red",
                              command=root.destroy)
        self.quit.pack(side="bottom")

    def say_hi(self):
        print("hi there, everyone!")

root = tk.Tk()
app = Application(master=root)
app.mainloop()

================================================================

 

ttk是增強版的tk,其中有17個圖形類,包括tk中的11個類:
Button, Checkbutton, Entry, Frame, Label, LabelFrame, Menubutton, PanedWindow, Radiobutton, Scale, Scrollbar
ttk新增的6個: Combobox, Notebook, Progressbar, Separator, Sizegrip, Treeview
這17個類都繼承自 Widget。


place 是設置控件的位置,以坐標的方式進行
place是最簡單的幾何形狀的管理,在Tkinter提供的三個通用幾何圖形管理。
它允許顯式地設置窗口的位置和大小,無論是絕對值,還是相對於另一個窗口。
通常不會使用place來管理窗口控件的位置,它只是為了讓工作變得簡單,正常工作。
一般推薦使用pack和grid方式來進行控件控制。
然而,place在特殊情況下有其用途。最重要的是,它可以由復合小部件容器實現各種自定義幾何管理器。另一個用途是在對話框中放置控制按鈕,實現不同控件的覆蓋。
place(**options) [#]
Place this widget relative to its parent.

**options
Geometry options.
anchor= # 錨,停靠的地方,默認是:圖形位置的西北
默認值是 NW.
bordermode= # 邊框模式,默認是:內邊界
默認值是 INSIDE.
height= # 高度
無默認值.
in= # 控制在某個控件內,in是python中的關鍵字,通常使用 in_ 代替
默認值是 ..
relheight= # 相對高度
無默認值.
relwidth= # 相對寬度
無默認值.
relx= # 相對水平距離
默認值是 0.
rely= # 相對垂直距離
默認值是 0.
width= # 寬度
無默認值.
x= # 相對於水平的距離,以像素為單位
默認值是 0.
y= # 相對於垂直的距離,以像素為單位
默認值是 0.

pack 是控件內的填充,一般會是填充整個控件
相比於grid管理,pack管理是有所限制的,但它更容易使用一些。
1、將一個小部件放入框架(或任何其他容器小部件)中,並填充整個框架。
2、將許多小部件放在彼此之上。
3、並排放置多個小部件。
如果你需要創建更復雜的布局,通常你需要使用額外的框架部件的部件組。你也可以使用網格管理器代替。
注意:不要在同一主窗口中混合使用grid和pack。tkinter無法兼顧到兩種
pack(**options) [#]
**options
anchor=
將小部件放在pack。默認位置為中心 CENTER ,其他的還有N,NE,E,SE,S,SW,W,NW,or CENTER.。
expand=
指定是否應擴展小部件以填充幾何主機中的任何額外空間。如果為false(默認),則未擴展小部件。
fill=
指定小部件是否應該占用主提供給它的所有空間。如果NONE沒有(默認),保留小部件的原始大小。如果x(水平填充),y(垂直填充),或者 BOTH 兩者都,沿着這個方向填充給定的空間。
要使一個小部件填充整個主窗口小部件,將填充設置為兩個,然后擴展到非零值。
in=
將此小部件打包到給定的小部件內。你只能裝在它的父控件,或在任何后學其父。這個選項通常應該被忽略,在這種情況下,小部件被打包在其父進程內。
注意,在Python中是一個保留字。使用它作為一個關鍵詞的選擇,添加一個下划線(in_)。
ipadx=
水平內部填充。默認值是0。
ipady=
垂直內部填充。默認值是0。
padx=
水平擴展,外部填充。默認值是0。
pady=
垂直擴展,外部填充。默認值是0。
side=
指定包裝小部件的哪一面。要垂直包裝小部件,使用TOP(默認)。要橫向包裝小部件,請使用LEFT。
您還可以沿着(BOTTOM and RIGHT)右下角包裝小部件。您可以在一個單一的幾何管理器中混合邊,但結果可能並不總是您期望的那樣。雖然可以通過嵌套框架小部件來創建相當復雜的布局,但您可能更喜歡使用網格幾何管理器來實現不平凡的布局。

grid 是以網格的方式進行設置控件位置
grid(**options) [#]
column=
在當前列插入一個小器件,列的其實數字是0,如果不設置,默認為0.
columnspan=
如果給定,則指示小部件單元應該跨越多個列。默認值是1。
in=
將小部件放入給定的部件中。你只能放置一個控件在其父控件上,或任何其父控件的子控件中。如果不提供此選項,則默認為父級。
注意,在Python中是一個保留字。使用它作為一個關鍵詞的選擇,添加一個下划線(in_)。
in_=
Same as in. See above.
ipadx=
可選水平內填充。就像padx,但填充里面的控件的邊界。默認值是0。
ipady=
可選垂直內填充。就像pady,但填充里面的控件的邊界。默認值是0。
padx=
可選的水平填充,以放置在單元格中的小部件周圍。默認值是0。
pady=
可選的垂直填充,以放置在單元格中的小部件周圍。默認值是0。
row=
在這行插入小部件。行號從0開始。如果省略,則默認為網格中的第一個空行。
rowspan=
如果給定,則指示小部件單元應該跨越多行。默認值是1。
sticky=
定義如何擴展小部件,如果生成的單元格大於小部件本身。這可以是常數S, N, E,和W ,也可以是任意組合NW、NE、SW和SE。
例如,W (west) 意味着小部件應該與左單元格邊界對齊。W+E意味着小部件應該水平拉伸以填充整個單元。W+E+N+S意味着小部件應該在兩個方向上展開,平鋪在單元格內。默認是將小部件居中。

 

Frame: 框架部件
一個框架是屏幕上的矩形區域。該框架部件主要用於其他部件圖形管控,或提供其他部件之間的填充。
config(**options) [#]
**options
background=
設置背景顏色。
bg=
Same as background.
borderwidth=
邊框寬度。默認為0(沒有邊框)。
bd=
Same as borderwidth.
class=
默認值是 Frame. (class/Class)
colormap=
根據實際系統支持的顏色進行匹配。
container=
默認值是 0. (container/Container)
cursor=
鼠標指針放置在這個小部件上時要顯示的光標。默認值是特定於系統的箭頭光標。(光標/光標)
height=
默認值是 0. (height/Height)
highlightbackground=
高亮背景,限於特定系統。
highlightcolor=
高亮顏色,限於特定系統。
highlightthickness=
默認值是 0. 高亮厚度。
padx=
水平填充,默認是0
pady=
垂直填充,默認是0
relief=
邊框裝飾。默認是 FLAT 平的。其他值是 SUNKEN 凹陷、 RAISED 凸起、 GROOVE 凹槽和 RIDGE 脊。
注意顯示的邊界,你需要改變的邊界寬度為0的默認值。
takefocus=
如果為真,用戶可以使用tab鍵移動到這個小部件。默認值是0。
visual= 視覺的,看得見的;
無默認值. (visual/Visual)
width= 寬度
默認值是 0. (width/Width)

 

Button:按鈕
config(**options) [#]
**options
activebackground=
當標簽被激活時使用的背景色(可以設置狀態選項). 默認值為平台指定的. (選項的數據庫名activeBackground, 類名是Foreground)
activeforeground=
標簽激活時使用什么前景色。默認為平台指定的顏色. (activeForeground/Background)
anchor=
控制加載按鈕的文本(或者圖片)。使用N, NE, E, SE, S, SW, W, NW, or CENTER其中之一。默認值是CENTER. (anchor/Anchor)
background=
設置背景色,默認為系統指定(background/Background)
bg=
Same as background.
bitmap=
要在小部件中顯示的位圖。如果給定圖像選項,則忽略此選項。 (bitmap/Bitmap)
borderwidth=
按鈕邊框的寬度。默認的是平台特定的,通常是1或2像素。 (borderWidth/BorderWidth)
bd=
Same as borderwidth.
command=
按下按鈕時調用的函數或方法。回調函數可以是函數、綁定方法,或者任何其他可調用的Python對象。如果不使用此選項,則用戶按下按鈕時不會發生任何事情。 (command/Command)
compound=
控制如何將文本和圖像組合在按鈕中。默認情況下,如果給定一個圖像或位圖,則將其繪制為文本。如果將此選項設置為中心CENTER,則在圖像頂部繪制文本。如果該選項設置為BOTTOM, LEFT, RIGHT, or TOP, 繪制的圖像在文本旁 (使用BOTTOM繪制圖像是會在文本下面etc.). 無默認值. (compound/Compound)
cursor=
鼠標移動到按鈕上時顯示的光標。(cursor/Cursor)
default=
如果設置,則按鈕是默認按鈕。它會顯示這的繪圖平台的具體指標(通常是一個額外的邊界)。默認已禁用DISABLED (無默認行為)。(default/Default)
disabledforeground=
按鈕禁用時使用的顏色。背景顯示在背景色中。默認值是特定於系統的。(disabledForeground/DisabledForeground)
font=
按鈕中使用的字體。按鈕只能包含單個字體的文本。默認值是特定於系統的。 (font/Font)
foreground=
用於文本和位圖內容的顏色。默認值是特定於系統的。(foreground/Foreground)
fg=
Same as foreground.
height=
按鈕的高度。如果按鈕顯示文本,則以文本單位給出大小。如果按鈕顯示圖像,則以像素(或屏幕單元)給出大小。如果省略了大小,則基於按鈕內容計算。(height/Height)
highlightbackground=
當按鈕沒有焦點時,用於高亮邊框的顏色。默認值是特定於系統的。 (highlightBackground/HighlightBackground)
highlightcolor=
當按鈕具有焦點時,用於高亮邊框的顏色。默認系統指定。 (highlightColor/HighlightColor)
highlightthickness=
突出邊框的寬度。默認值是系統指定的(通常是1個或2個像素)。(highlightThickness/HighlightThickness)
image=
要在小部件中顯示的圖像。如果指定,則優先於文本和位圖選項。(image/Image)
justify=
定義如何對齊多行文本。使用LEFT, RIGHT, CENTER. 默認是CENTER. (justify/Justify)
overrelief=
當鼠標移動到小部件上時可以使用的其他救濟。如果空,總是使用浮雕值。 (overRelief/OverRelief)
padx=
文本或圖像和邊框之間的額外水平填充。(padX/Pad)
pady=
文本或圖像和邊框之間的額外垂直填充。(padY/Pad)
relief=
邊框裝飾。通常當按下按鈕是SUNKEN(凹陷的,下陷的), 否則是RAISED(凸出顯示). 其他值有 GROOVE, RIDGE, FLAT(槽狀的、脊狀的或扁平的).默認值是RAISED. (relief/Relief)
repeatdelay= 重復延遲
(repeatDelay/RepeatDelay)
repeatinterval= 重復間隔
(repeatInterval/RepeatInterval)
state=
按鈕狀態: NORMAL, ACTIVE or DISABLED. 默認是 NORMAL. (state/State)
takefocus=
指示用戶可以使用tab鍵移動到該按鈕。默認是一個空字符串,這意味着只有當它有任何鍵盤綁定時,按鈕才會接受焦點。(換句話說默認是打開). (takeFocus/TakeFocus)
text=
要在按鈕中顯示的文本。文本可以包含換行。如果使用位圖或圖像選項,則忽略此選項 (除非使用復合選項). (text/Text)
textvariable=
按鈕的Tkinter變量(通常是一個StringVar)。如果變量被更改,按鈕文本將被更新。(textVariable/Variable)
underline=
在文本標簽中,給定下划線的字符. 默認值是 -1, 意思是沒有字符有下划線. (underline/Underline)
width=
按鈕的寬度。如果按鈕顯示文本,則以文本單位給出大小。如果按鈕顯示圖像,則以像素(或屏幕單元)給出大小。如果省略了大小,或者是零,則根據按鈕內容計算。(width/Width)
wraplength=
確定按鈕的文本應何時被包裝成多行。這是在屏幕單元中給出的。默認值為0(無包裝)。 (wrapLength/WrapLength)

 

Canvas:油畫(布),繪畫板
config(**options) [#]
**options
background=
繪畫板背景顏色。默認為標准的小器件背景色. (數據庫名background, 類名Background)
bg=
Same as background.
borderwidth=
畫圖板邊框的寬度。 默認值是0 (no border). (borderWidth/BorderWidth)
bd=
Same as borderwidth.
closeenough= 近距離感受??
默認值是 1. (closeEnough/CloseEnough)
confine= 限制???
默認值是 1. (confine/Confine)
cursor=
鼠標移動到畫圖板上時顯示的光標。(cursor/Cursor)
height=
畫圖板的高度。默認值是‘7c’. (height/Height)
highlightbackground=
當畫布沒有焦點時,用於高亮邊框的顏色。默認值是系統指定. (highlightBackground/HighlightBackground)
highlightcolor=
當畫布具有焦點時,用於高亮邊框的顏色。默認值是系統指定. (highlightColor/HighlightColor)
highlightthickness=
突出邊框的寬度。默認值是系統指定(通常是1到2個像素)(highlightThickness/HighlightThickness)
insertbackground=
文本插入光標所使用的顏色。默認值是系統指定. (insertBackground/Foreground)
insertborderwidth=
將插入光標的邊框寬度。如果這被設置為非零值,光標是凸起邊框樣式繪制。 (insertBorderWidth/BorderWidth)
insertofftime=
與insertontime使用方式一致,這個選項控制光標閃爍。兩個值都以毫秒為單位給出。 (insertOffTime/OffTime)
insertontime=
See insertofftime. (insertOnTime/OnTime)
insertwidth=
插入游標的寬度。通常是1/2個像素。 (insertWidth/InsertWidth)
offset= # 偏移
默認值是‘0,0’. (offset/Offset)
relief=
邊框樣式,默認值是FLAT. 其他值是SUNKEN, RAISED, GROOVE, and RIDGE. (relief/Relief)
scrollregion=
畫布滾動區域。沒有默認值。 (scrollRegion/ScrollRegion)
selectbackground=
選擇背景色。 默認值是系統指定. (selectBackground/Foreground)
selectborderwidth=
選擇邊框寬度。默認值是系統指定. (selectBorderWidth/BorderWidth)
selectforeground=
選擇文本顏色。默認值是系統指定. (selectForeground/Background)
state=
畫布狀態。NORMAL, DISABLED, or HIDDEN. 默認值是NORMAL. 注意:這是一個全局設置, 但個別畫布項可以使用項級狀態選項來覆蓋此設置。 (state/State)
takefocus=
指示用戶可以使用tab鍵移動到這個小部件。默認是一個空字符串,這意味着只有當它具有任何鍵盤綁定時,畫布小部件才會接受焦點。(takeFocus/TakeFocus)
width=
畫布寬度。默認值是‘10c’. (width/Width)
xscrollcommand=
用於連接一個畫布水平滾動條。此選項應設置為相應的滾動條的設置方法。 (xScrollCommand/ScrollCommand)
xscrollincrement= 水平滾動增量
默認值是 0. (xScrollIncrement/ScrollIncrement)
yscrollcommand=
用於連接一個畫布垂直滾動條。此選項應設置為相應的滾動條的設置方法。 (yScrollCommand/ScrollCommand)
yscrollincrement= 垂直滾動增量
默認值是 0. (yScrollIncrement/ScrollIncrement)


CheckBox: 復選框
config(**options) [#]
**options
activebackground=
按鈕激活時使用的背景色。默認值是特定於系統的。(數據庫名字activeBackground,類名Foreground)
activeforeground=
按鈕激活時使用的前景色。默認值是特定於系統的。(activeForeground/Background)
anchor=
控件位於文本(或圖像)的按鈕所在位置。使用N, NE, E, SE, S, SW, W, NW, or CENTER之一. 默認CENTER.如果改變,也許也可以添加一些填充物,可以使用padx and/or pady 參數. (anchor/Anchor)
background=
按鈕背景顏色。默認值是特定於系統的。(background/Background)
bg=
Same as background.
bitmap=
要在小部件中顯示的位圖。如果給定圖像選項,則忽略此選項。
你可以使用一個內置的位圖,或加載位圖的XBM文件。要從文件加載位圖,只需將文件名前綴為at標記(例如:“@sample.xbm”). (bitmap/Bitmap)
borderwidth=
按鈕邊框的寬度。默認值是特定於系統的,但通常是1/2個像素。(borderWidth/BorderWidth)
bd=
Same as borderwidth.
command=
按下按鈕時調用的函數或方法。回調函數可以是函數、綁定方法,或者任何其他可調用的Python對象。沒有默認。(command/Command)
compound= # 混合
沒有默認值。(compound/Compound)
cursor=
鼠標指針在按鈕上移動時顯示的光標。(cursor/Cursor)
disabledforeground=
按鈕禁用時使用的顏色。背景顯示在背景色中。(disabledForeground/DisabledForeground)
font=
按鈕中使用的字體。按鈕只能包含單個字體的文本。默認值是特定於系統的。(font/Font)
foreground=
按鈕前景色。默認值是特定於系統的。(foreground/Foreground)
fg=
Same as foreground.
height=
按鈕的大小。如果按鈕顯示文本,則以文本單位給出大小。如果按鈕顯示圖像,則以像素(或屏幕單元)給出大小。如果省略了大小,則基於按鈕內容計算。 (height/Height)
highlightbackground=
默認值是特定於系統的。(highlightBackground/HighlightBackground)
highlightcolor=
默認值是特定於系統的。 (highlightColor/HighlightColor)
highlightthickness=
默認值是:1. (highlightThickness/HighlightThickness)
image=
要在小部件中顯示的圖像。如果指定,則優先於文本和位圖選項。沒有默認。 (image/Image)
indicatoron=
控制是否應繪制指示器。默認是打開的.
將此選項設置為false意味着將用作指示符。如果按鈕被選中,將會被繪制為SUNKEN 代替RAISED. (indicatorOn/IndicatorOn)
justify=
定義如何對齊多行文本。 使用LEFT, RIGHT, or CENTER (default). (justify/Justify)
offrelief=
默認值是:raised 凸起. (offRelief/OffRelief)
offvalue=
未選中按鈕相對應的值。默認值是0. (offValue/Value)
onvalue=
選中按鈕對應的值,默認值是1. (onValue/Value)
overrelief=
無默認值. (overRelief/OverRelief)
padx=
按鈕水平填充. 默認值是 1. (padX/Pad)
pady=
按鈕垂直填充. 默認值是 1. (padY/Pad)
relief=
邊框裝飾。這通常是扁平FLAT的選擇按鈕,除非他們使用邊界的指示(通過指標的選擇)。 (relief/Relief)
selectcolor=
用於選擇器的顏色。默認值是系統指定. (selectColor/Background)
selectimage=
用於選擇器的圖形圖像。No default. (selectImage/SelectImage)
state=
按鈕狀態,可選NORMAL, ACTIVE or DISABLED. 默認值是 NORMAL. (state/State)
takefocus=
指示用戶可以使用tab鍵移動到該按鈕。默認是一個空字符串,這意味着只有當它有任何鍵盤綁定時,按鈕才會接受焦點(換句話說,默認是打開的)。(takeFocus/TakeFocus)
text=
要在按鈕中顯示的文本。文本可以包含換行。如果使用位圖或圖像選項,則忽略此選項。(text/Text)
textvariable=
按鈕的Tkinter變量(通常是一個StringVar)。如果變量被更改,按鈕文本將被更新。
還可以看到變量選項。 (textVariable/Variable)
underline=
要下划線的字符,如果有的話。默認值是 -1 (no underline). (underline/Underline)
variable=
把它變為按鈕。按下按鈕時,該變量是預測臨界值和價值之間切換。按鈕會自動反映對變量的顯式更改。 (variable/Variable)
width=
按鈕的寬度。(width/Width)
wraplength=
確定按鈕的文本應何時被包裝成多行。這是在屏幕單元中給出的。默認是沒有包裝。 (wrapLength/WrapLength)
deselect() [#]
反選按鈕。
flash() [#]
多次重繪按鈕, 激活與正常外觀交替。
invoke() [#]
調用與按鈕關聯的命令。
select() [#]
選擇按鈕。
toggle() [#]
切換按鈕。


Entry:輸入框,跟input一樣
config(**options) [#]
background=
控件的背景。默認值是特定於系統的。(參數數據庫名字 background,類名字 Background)
bg=
Same as background.
borderwidth=
邊框寬度。默認值是特定於系統的,但通常是幾個像素。 (borderWidth/BorderWidth)
bd=
Same as borderwidth.
cursor=
控件的光標。默認值是文本插入游標。(一個典型的“I-beam工字鋼”光標,如xterm). (cursor/Cursor)
disabledbackground=
當小部件被禁用時使用的背景。如果省略或空白,則使用標准背景。(disabledBackground/DisabledBackground)
disabledforeground=
控件被禁用時,文字顏色的使用。如果省略或空白,前景是用來代替標准。(disabledForeground/ DisabledForeground)
exportselection=
如果為真,所選文本將自動導出到剪貼板。默認為真。(exportSelection/ExportSelection)
font=
器件字體。系統指定. (font/Font)
foreground=
文本顏色。(foreground/Foreground)
fg=
Same as foreground.
highlightbackground=
與highlightcolor相同, 這個選項控制如何畫重點突出邊境。此選項在小部件沒有焦點時使用。系統指定. (highlightBackground/HighlightBackground)
highlightcolor=
highlightbackground相同,但用於當控件具有焦點。(highlightColor/HighlightColor)
highlightthickness=
焦點突出邊框的寬度。默認情況下,通常只有幾個像素,除非系統通過修改按鈕本身(比如在Windows上)表示焦點。 (highlightThickness/HighlightThickness)
insertbackground=
用於插入光標的顏色。(insertBackground/Foreground)
insertborderwidth=
插入游標邊框的寬度。如果將此值設置為非零值,則使用RAISED 凸起邊框樣式繪制光標。(insertBorderWidth/BorderWidth)
insertofftime=
與insertontime相同,這個選項控制光標閃爍。兩個值都以毫秒為單位給出。 (insertOffTime/OffTime)
insertontime=
See insertofftime. (insertOnTime/OnTime)
insertwidth=
插入游標的寬度。通常是一或兩個像素。 (insertWidth/InsertWidth)
invalidcommand= 無效命令
FIXME. No default. (invalidCommand/InvalidCommand)
invcmd=
Same as invalidcommand.
justify=
如何對齊輸入字段中的文本。使用 LEFT, CENTER, or RIGHT之一. 默認值 LEFT. (justify/Justify)
readonlybackground=
背景顏色使用狀態“只讀”。如果省略或空白,則使用標准背景。(readonlyBackground/ReadonlyBackground)
relief=
邊框樣式。默認值SUNKEN. 其他可選值:FLAT, RAISED, GROOVE, and RIDGE. (relief/Relief)
selectbackground=
選擇背景色。默認是系統和顯示特定的。(selectBackground/Foreground)
selectborderwidth=
選擇邊框寬度,系統指定. (selectBorderWidth/BorderWidth)te
selectforeground=
選擇文本顏色,系統指定. (selectForeground/Background)
show=
控制如何顯示小部件的內容。如果非空,則小部件顯示字符字符串,而不是實際內容。要獲得密碼輸入小部件,請將此選項設置為“*”。 (show/Show)
state=
輸入框狀態: NORMAL, DISABLED, or “readonly” (same as DISABLED,但是內容可以選擇和拷貝). 默認值 NORMAL. 注意如果設置了DISABLED or “readonly”, 忽略插入和刪除的調用。(state/State)
takefocus=
指示用戶可以使用tab鍵移動到這個小部件。默認是一個空字符串,這意味着只有當它具有任何鍵盤綁定(默認是打開的)時,輸入框小部件才會接受焦點。 (takeFocus/TakeFocus)
textvariable=
把Tkinter變量(通常是一個StringVar)的輸入字段的內容。(textVariable/Variable)
validate=
指定何時應該進行驗證。你可以用“focus”來驗證當控件獲得或失去焦點,“focusin”進行驗證,只有當它獲得焦點,“focusout”驗證失去焦點,“key”上的任何修改,和所有的情況。默認是沒有的(沒有驗證)。 (validate/Validate)
validatecommand=
一個函數或方法調用檢查內容是有效的。如果新內容的功能應該是有效的返回一個真值或假如果不是。請注意,此選項僅用於驗證選項沒有沒有如果。 (validateCommand/ValidateCommand)
vcmd=
Same as validatecommand.
width=
輸入字段的寬度,以字符單位為單位。注意,它控制屏幕上的大小;它不限制可以鍵入到輸入字段中的字符數。默認寬度為20個字符。(width/Width)
xscrollcommand=
用來連接一個輸入字段的水平滾動條。此選項應設置為相應的滾動條的設置方法。(xScrollCommand/ScrollCommand)

 

LabelFrame: 標簽框架,就是可以將小器件抱起來的圈圈。
config(**options) [#]
**options
background=
此框架中使用的背景色。默認為應用程序背景顏色。若要防止更新,請將顏色設置為空字符串。 (the option database name is background, the class is Background)
bd=
Same as borderwidth.
bg=
Same as background.
borderwidth=
邊框寬度。默認是2像素。 (borderWidth/BorderWidth)
class=
默認值是:Labelframe. (class/Class)
colormap=
有些顯示器只支持256種顏色(有些甚至更少)。這種顯示通常提供一個顏色映射來指定使用哪256種顏色。此選項允許您指定用於此幀的顏色映射及其子部件。
默認情況下,一個新框架使用與其父相同的顏色映射。使用此選項,您可以重用另一個窗口的顏色映射(此窗口必須位於同一個屏幕上,且具有相同的視覺特性)。您也可以使用值“新”來為這個框架分配一個新的顏色映射。
創建框架后,不能更改此選項。(colormap/Colormap)
container=
如果為true,則此frame是容器小部件。默認為false。
創建frame后,不能更改此選項。(container/Container)
cursor=
鼠標指針放置在這個小部件上時要顯示的光標。默認值是特定於系統的箭頭光標。 (cursor/Cursor)
fg=
Same as foreground.
font=
標簽文本使用的字體。默認值是特定於系統的。(font/Font)
foreground=
用於標簽文本的顏色。默認值是特定於系統的。(foreground/Foreground)
height=
Frame高度,以像素為單位。無默認值。 (height/Height)
highlightbackground=
與highlightcolor相同, 這個選項控制如何畫重點突出邊境。此選項在小部件沒有焦點時使用。默認值是特定於系統的。 (highlightBackground/HighlightBackground)
highlightcolor=
與highlightbackground相同, 當小器件有焦點時使用. (highlightColor/HighlightColor)
highlightthickness=
焦點突出邊框的寬度。默認值通常是幾個像素。 (highlightThickness/HighlightThickness)
labelanchor=
在哪里畫標簽文本。默認是NW (upper left corner). (labelAnchor/LabelAnchor)
labelwidget=
用於標簽的小部件。如果省略,框架使用文本選項。無默認值。(labelWidget/LabelWidget)
padx=
水平內填充。默認值 0. (padX/Pad)
pady=
垂直內填充。默認值 0. (padY/Pad)
relief=
邊框樣式。默認值GROOVE.其他值有FLAT, RAISED, SUNKEN, and RIDGE. (relief/Relief)
takefocus=
如果為true,則指示用戶可以使用tab鍵移動到這個小部件。默認值是0 (false). (takeFocus/TakeFocus)
text=
標簽文本。 (text/Text)
visual=
視屏。無默認值。(visual/Visual)
width=
Frame 寬度.無默認值. (width/Width)

 

Menu:菜單
root = Tk()

def hello():
print "hello!"

menubar = Menu(root)

# create a pulldown menu, and add it to the menu bar
filemenu = Menu(menubar, tearoff=0)
filemenu.add_command(label="Open", command=hello)
filemenu.add_command(label="Save", command=hello)
filemenu.add_separator()
filemenu.add_command(label="Exit", command=root.quit)
menubar.add_cascade(label="File", menu=filemenu)

# create more pulldown menus
editmenu = Menu(menubar, tearoff=0)
editmenu.add_command(label="Cut", command=hello)
editmenu.add_command(label="Copy", command=hello)
editmenu.add_command(label="Paste", command=hello)
menubar.add_cascade(label="Edit", menu=editmenu)

helpmenu = Menu(menubar, tearoff=0)
helpmenu.add_command(label="About", command=hello)
menubar.add_cascade(label="Help", menu=helpmenu)

# display the menu
root.config(menu=menubar)

config(**options) [#]
**options
activebackground=
默認值‘SystemHighlight’. (數據庫名字activeBackground, 類名字是 Foreground)
activeborderwidth=
默認值是 0. (activeBorderWidth/BorderWidth)
activeforeground=
默認值是 ‘SystemHighlightText’. (activeForeground/Background)
background=
默認值是 ‘SystemMenu’. (background/Background)
bg=
Same as background.
borderwidth=
默認值是 0. (borderWidth/BorderWidth)
bd=
Same as borderwidth.
cursor=
默認值是 ‘arrow’. (cursor/Cursor)
disabledforeground=
默認值是 ‘SystemDisabledText’. (disabledForeground/DisabledForeground)
font=
默認值是 ‘MS Sans Serif 8’. (font/Font)
foreground=
默認值是 ‘SystemMenuText’. (foreground/Foreground)
fg=
Same as foreground.
postcommand=
無默認值. (postCommand/Command)
relief=
默認值是 ‘flat’. (relief/Relief)
selectcolor=
默認值是 ‘SystemMenuText’. (selectColor/Background)
takefocus=
默認值是 0. (takeFocus/TakeFocus)
tearoff=
默認值是 1. (tearOff/TearOff)
tearoffcommand=
無默認值. (tearOffCommand/TearOffCommand)
title=
無默認值. (title/Title)
type=
默認值是 ‘normal’. (type/Type)


Menubutton : 菜單按鈕
config(**options) [#]
activebackground=
默認值是系統指定. (the database name is activeBackground, the class is Foreground)
activeforeground=
默認值是系統指定. (activeForeground/Background)
anchor=
默認值是 CENTER. (anchor/Anchor)
background=
默認值是系統指定. (background/Background)
bg=
Same as background.
bitmap=
無默認值. (bitmap/Bitmap)
borderwidth=
默認值是 2. (borderWidth/BorderWidth)
bd=
Same as borderwidth.
compound=
默認值是NONE. (compound/Compound)
cursor=
無默認值. (cursor/Cursor)
direction=
默認值是“below”. (direction/Direction)
disabledforeground=
默認值是系統指定. (disabledForeground/DisabledForeground)
font=
默認值是系統指定. (font/Font)
foreground=
默認值是系統指定. (foreground/Foreground)
fg=
Same as foreground.
height=
默認值是 0. (height/Height)
highlightbackground=
默認值是系統指定. (highlightBackground/HighlightBackground)
highlightcolor=
默認值是系統指定. (highlightColor/HighlightColor)
highlightthickness=
默認值是 0. (highlightThickness/HighlightThickness)
image=
無默認值. (image/Image)
indicatoron=
默認值是 0. (indicatorOn/IndicatorOn)
justify=
默認值是 CENTER. (justify/Justify)
menu=
無默認值. (menu/Menu)
padx=
默認值是 ‘4p’. (padX/Pad)
pady=
默認值是 ‘3p’. (padY/Pad)
relief=
默認值是 FLAT. (relief/Relief)
state=
默認值是 NORMAL. (state/State)
takefocus=
默認值是 0. (takeFocus/TakeFocus)
text=
無默認值. (text/Text)
textvariable=
無默認值. (textVariable/Variable)
underline=
默認值是 -1 (no underline). (underline/Underline)
width=
默認值是 0. (width/Width)
wraplength=
默認值是 0. (wrapLength/WrapLength)

 

Message : 消息
消息控件的標簽的一個變種,用來顯示多行信息。消息小部件可以包裝文本,並調整其寬度以維持給定的長寬比。
config(**options) [#]
**options
anchor=
在消息小部件中,文本的位置。使用N, NE, E, SE, S, SW, W, NW, or CENTER之一. 默認值 CENTER. (數據庫名字anchor, 類名字 Anchor)
aspect=
寬高比,作為寬度/高度關系的百分比。默認值是150,這意味着消息將比它高50%。注意,如果顯式設置了寬度,則忽略此選項。 (aspect/Aspect)
background=
Message背景顏色. 默認值是系統指定 (background/Background)
bg=
Same as background.
borderwidth=
邊框寬度。默認值是2. (borderWidth/BorderWidth)
bd=
Same as borderwidth.
cursor=
鼠標移動到消息小部件時顯示什么光標。默認值是使用標准游標。(cursor/Cursor)
font=
消息字體. 默認值是系統指定 (font/Font)
foreground=
文本顏色. 默認值是系統指定 (foreground/Foreground)
fg=
Same as foreground.
highlightbackground=
與highlightcolor和highlightthickness相同, 這個選項控制如何繪制高亮區域。(highlightBackground/HighlightBackground)
highlightcolor=
See highlightbackground. (highlightColor/HighlightColor)
highlightthickness=
See highlightbackground. (highlightThickness/HighlightThickness)
justify=
定義如何對齊多行文本。使用LEFT, RIGHT, or CENTER. 注意,要在小部件中定位文本,請使用錨點選項。默認值是LEFT. (justify/Justify)
padx=
水平填充。默認值是-1 (no padding). (padX/Pad)
pady=
垂直填充。默認值是-1 (no padding). (padY/Pad)
relief=
邊框裝飾。默認值是FLAT.其它選項是 SUNKEN, RAISED, GROOVE, and RIDGE. (relief/Relief)
takefocus=
如果為真,則小部件接受輸入焦點。默認為false。(takeFocus/TakeFocus)
text=
消息文本。如果必要的話,小部件插入換行符以獲得所要求的寬高比。 (text/Text)
textvariable=
把Tkinter變量(通常是一個StringVar)的消息。如果變量被更改,消息文本將被更新。(textVariable/Variable)
width=
部件寬度,字符單位。如果省略,小部件根據外觀設置選擇合適的寬度。 (width/Width)

PanedWindow : 中分欄窗口控件
config(**options) [#]
**options
background=
默認值是系統指定. (background/Background)
bd=
Same as borderwidth.
bg=
Same as background.
borderwidth=
默認值是 2. (borderWidth/BorderWidth)
cursor=
無默認值. (cursor/Cursor)
handlepad=
默認值是 8. (handlePad/HandlePad)
handlesize=
默認值是 8. (handleSize/HandleSize)
height=
無默認值. (height/Height)
opaqueresize=
無默認值. (opaqueResize/OpaqueResize)
orient=
默認值是 HORIZONTAL. (orient/Orient)
relief=
默認值是 FLAT. (relief/Relief)
sashcursor=
無默認值. (sashCursor/Cursor)
sashpad=
默認值是 2. (sashPad/SashPad)
sashrelief=
默認值是 RAISED. (sashRelief/Relief)
sashwidth=
默認值是 2. (sashWidth/Width)
showhandle=
無默認值. (showHandle/ShowHandle)
width=
無默認值. (width/Width)


Radiobutton:單選按鈕
config(**options) [#]
**options
activebackground=
點擊按鈕是會使用的背景顏色,默認為系統指定的顏色,(參數的數據庫名字是activeBackground,類是Foreground)
activeforeground=
按鈕激活時使用什么前景色。默認值是特定於系統的。(activeForeground/Background)
anchor=
控件位於文本(或圖像)的按鈕所在位置。使用N, NE, E, SE, S, SW, W, NW, or CENTER. 默認 CENTER. (anchor/Anchor)
background=
背景色,默認是系統指定的顏色 (background/Background)
bg=
Same as background.
bitmap=
要在小部件中顯示的位圖。如果給定圖像選項,則忽略此選項。 (bitmap/Bitmap)
borderwidth=
按鈕邊界寬度,默認值是平台指定的, 通常是1或2個像素. (borderWidth/BorderWidth)
bd=
Same as borderwidth.
command=
當按鈕被點擊是調用的方法或者函數. 回調函數可以是函數、綁定方法,或者任何其他可調用的Python對象。(command/Command)
compound=
控制如何將文本和圖像組合在按鈕中。默認情況下,如果給定一個圖像或位圖,則將其繪制為文本。如果將此選項設置為 CENTER ,則在圖像頂部繪制文本。如果該選項設置為 BOTTOM, LEFT, RIGHT, or TOP ,則除文本之外繪制圖像(使用 BOTTOM 繪制文本下的圖像等)。默認沒有。(compound/Compound)
cursor=
鼠標移動到按鈕上時顯示的光標。(cursor/Cursor)
disabledforeground=
按鈕禁用時使用的顏色。背景顯示在背景色中。默認值是特定於系統的。(disabledForeground/DisabledForeground)
font=
按鈕中使用的字體。按鈕只能包含單個字體的文本。默認值是特定於系統的。(font/Font)
foreground=
用於文本和位圖內容的顏色。默認值是特定於系統的。(foreground/Foreground)
fg=
Same as foreground.
height=
按鈕的高度。如果按鈕顯示文本,則以文本單位給出大小為准。如果按鈕顯示圖像,則以像素(或屏幕單元)給出大小。如果省略了大小,則基於按鈕內容計算。 (height/Height)
highlightbackground=
沒有觸動按鈕時,其邊界顯示的高亮顏色. 默認為系統指定. (highlightBackground/HighlightBackground)
highlightcolor=
當按鈕具有焦點時,用於高亮邊框的顏色,默認為系統指定。 (highlightColor/HighlightColor)
highlightthickness=
突出邊框的寬度。默認值是特定於系統的(通常是1或2個像素)。 (highlightThickness/HighlightThickness)
image=
要在小部件中顯示的圖像。如果指定,則優先於文本和位圖選項。 (image/Image)
indicatoron=
如果為真,小部件使用標准單選按鈕外觀。如果為假,所選按鈕繪制為SUNKEN 代替。默認為真。
justify=
定義如何對齊多行文本。使用LEFT, RIGHT, or CENTER. 默認是 CENTER. (justify/Justify)
offrelief=
默認值是 raised. (offRelief/OffRelief)
overrelief=
替代性救濟使用,當鼠標移到窗口小部件。如果是空的,總是用減壓閥。(overRelief/OverRelief)
padx=
文本或圖像和邊框之間的額外水平填充。(padX/Pad)
pady=
文本或圖像和邊框之間的額外垂直填充。(padY/Pad)
relief=
邊框裝飾。SUNKEN, RAISED, GROOVE, RIDGE, or FLAT.(凹陷的、凸起的、槽狀的、脊狀的或扁平的) 如果indicatoron真默認為扁平, 否則是凸起 RAISED. (relief/Relief)
selectcolor=
默認值是‘SystemWindow’. (selectColor/Background)
selectimage=
無默認值. (selectImage/SelectImage)
state=
按鈕狀態 NORMAL, ACTIVE or DISABLED. 默認是NORMAL. (state/State)
takefocus=
指示用戶可以使用tab鍵移動到該按鈕。默認是一個空字符串,這意味着只有當它有任何鍵盤綁定時,按鈕才會接受焦點(換句話說,默認是打開的)。 (takeFocus/TakeFocus)
text=
要在按鈕中顯示的文本。文本可以包含換行。如果使用位圖或圖像選項,則忽略此選項(除非使用復合選項)。 (text/Text)
textvariable=
把Tkinter變量(通常是一個StringVar)的按鈕。如果變量被更改,按鈕文本將被更新。(textVariable/Variable)
underline=
在文本標簽中要下划線的字符。默認值是-1,意味着沒有下划線。 (underline/Underline)
value=
這個按鈕關聯的值。同一組中的所有按鈕都應該具有不同的值。 (value/Value)
variable=
與此按鈕關聯的變量。為了獲得適當的無線行為,您需要將同一變量與同一組中的所有按鈕相關聯。 (variable/Variable)
width=
按鈕的寬度。如果按鈕顯示文本,則以文本單位給出大小。如果按鈕顯示圖像,則以像素(或屏幕單元)給出大小。如果省略了大小,或者是零,則根據按鈕內容計算。 (width/Width)
wraplength=
確定按鈕的文本應何時被包裝成多行。這是在屏幕單元中給出的。默認值為0(無包裝). (wrapLength/WrapLength)

deselect() [#]
取消選擇button.

flash() [#]
頻繁使用改變按鈕時,可能會用到此方法

invoke() [#]
調用與按鈕關聯的命令。

select() [#]
選擇button.


Scale : 規模、尺度、進度條
尺度小部件允許用戶通過沿着標尺移動“滑塊”旋鈕來選擇數值。您可以控制最小值和最大值,以及分辨率。
config(**options) [#]
**options
activebackground=
默認值是系統指定 (the database name is activeBackground, the class is Foreground)
background=
默認值是系統指定 (background/Background)
bg=
Same as background.
bigincrement=
默認值是0. (bigIncrement/BigIncrement)
borderwidth=
默認值是2. (borderWidth/BorderWidth)
bd=
Same as borderwidth.
command=
無默認值. (command/Command)
cursor=
無默認值. (cursor/Cursor)
digits=
默認值是0. (digits/Digits)
font=
默認值是系統指定 (font/Font)
foreground=
默認值是系統指定 (foreground/Foreground)
fg=
Same as foreground.
from=
默認值是0. (from/From)
highlightbackground=
默認值是系統指定 (highlightBackground/HighlightBackground)
highlightcolor=
默認值是系統指定 (highlightColor/HighlightColor)
highlightthickness=
默認值是2. (highlightThickness/HighlightThickness)
label=
無默認值. (label/Label)
length=
默認值是100. (length/Length)
orient=
默認值是VERTICAL. (orient/Orient)
relief=
默認值是FLAT. (relief/Relief)
repeatdelay=
默認值是300. (repeatDelay/RepeatDelay)
repeatinterval=
默認值是100. (repeatInterval/RepeatInterval)
resolution=
默認值是1. (resolution/Resolution)
showvalue=
默認值是1. (showValue/ShowValue)
sliderlength=
默認值是30. (sliderLength/SliderLength)
sliderrelief=
默認值是RAISED. (sliderRelief/SliderRelief)
state=
默認值是NORMAL. (state/State)
takefocus=
無默認值. (takeFocus/TakeFocus)
tickinterval=
默認值是0. (tickInterval/TickInterval)
to=
默認值是100. (to/To)
troughcolor=
默認值是系統指定 (troughColor/Background)
variable=
無默認值. (variable/Variable)
width=
默認值是15. (width/Width)

Scrollbar : 滾動條
滾動條控件幾乎總是使用一個 Listbox, Canvas, or Text 。水平滾動條也可以使用輸入 Entry控件。
Scrollbar(master=None, **options) (class)
config(**options) [#]
**options
activebackground=
默認值是系統指定. (the database name is activeBackground, the class is Foreground)
activerelief=
默認值是 RAISED. (activeRelief/Relief)
background=
默認值是系統指定. (background/Background)
bg=
Same as background.
borderwidth=
邊框寬度. 默認值是 0. (borderWidth/BorderWidth)
bd=
Same as borderwidth.
command=
用於更新關聯小部件的回調。這是典型的滾動YView 或 XView部件的方法。
如果用戶拖動滾動條滑塊,該命令為回調命令。(“moveto”, offset), 其中偏移量0.0表示滑塊處於最上面 (or leftmost) 位置, 偏移1.0意味着它在它的下面 (or rightmost) 位置.
如果用戶單擊箭頭按鈕,或者單擊滾動槽中,則命令稱為回調(“scroll”, step, what). 第二個參數是 “-1” 或者 “1” 視方向而定, 第三個參數是“units” 作為多行的滾動條 (或者其他有關單元的滾動部件), 或“pages” 作為整個頁面的滾動條. (command/Command)
cursor=
光標顯示當鼠標指針放在滾動條控件。默認值是特定於系統的箭頭光標。(cursor/Cursor)
elementborderwidth=
默認值是 -1. (elementBorderWidth/BorderWidth)
highlightbackground=
與highlightcolor and highlightthickness相同,此選項控制如何繪制高亮邊框。當小部件具有焦點時, a highlightthickness-wide 邊框的繪制highlightcolor 的顏色。否則,它被繪制於highlightbackground 顏色. 默認顏色是特定於系統的顏色。(highlightBackground/HighlightBackground)
highlightcolor=
See highlightbackground. (highlightColor/HighlightColor)
highlightthickness=
See highlightbackground. 默認值是 0 (no highlight border). (highlightThickness/HighlightThickness)
jump=
默認值是 0. (jump/Jump)
orient=
定義如何繪制滾動條。使用HORIZONTAL or VERTICAL.默認值是VERTICAL. (orient/Orient)
relief=
邊框裝飾。默認值 SUNKEN.其他值可以選擇FLAT, RAISED, GROOVE, and RIDGE. 在Windows下,忽略此選項. (relief/Relief)
repeatdelay=
默認值是 300. (repeatDelay/RepeatDelay)
repeatinterval=
默認值是 100. (repeatInterval/RepeatInterval)
takefocus=
默認值是空字符串. (takeFocus/TakeFocus)
troughcolor=
默認值是系統指定. (troughColor/Background)
width=
滾動條寬度,單位是像素.默認值是 16. (width/Width)


Label:標簽
**options
Widget options.
activebackground=
當標簽被激活時使用的背景色(可以設置狀態選項). 默認值為平台指定的. (選項的數據庫名activeBackground, 類名是Foreground)
activeforeground=
標簽激活時使用什么前景色。默認為平台指定的顏色. (activeForeground/Background)
anchor=
控件在標簽中的文本(或圖像)應該位於何處。通過N, NE, E, SE, S, SW, W, NW, or CENTER設置. 默認是CENTER. (anchor/Anchor)
background=
背景顏色,默認是系統指定的. (background/Background)
bg=
Same as background.
bitmap=
要在小部件中顯示的位圖。如果給定圖像選項,則忽略此選項。 (bitmap/Bitmap)
borderwidth=
標簽邊框的寬度。默認值是特定於系統的,但通常是一個或兩個像素。 (borderWidth/BorderWidth)
bd=
Same as borderwidth.
compound=
控制如何將文本和圖像組合在標簽中。默認情況下,如果給定一個圖像或位圖,則將其繪制為文本。 如果參數設置為CENTER, 文本在圖像的頂部繪制。如果參數被設置為BOTTOM, LEFT, RIGHT, or TOP之一, 圖像被繪制在文本旁 (使用 BOTTOM 圖像繪制在文本下, etc.)(compound/Compound)
cursor=
鼠標移動到標簽上時顯示什么光標。默認值是使用標准游標。 (cursor/Cursor)
disabledforeground=
當標簽被禁用時使用什么前景色。默認值是特定於系統的。 (disabledForeground/ DisabledForeground)
font=
在標簽中使用的字體. 標簽中只包含單獨字體的文本. 默認是系統指定的. (font/Font)
foreground=
使用文本和圖像標簽的前景色. 默認為系統指定. (foreground/Foreground)
fg=
Same as foreground.
height=
標簽的高度. 如果展示的是文本,高度值將由文本給定。如果標簽顯示圖像,則以像素(或屏幕單元)給出大小。如果大小設置為0,或者省略,則基於標簽內容計算。 (height/Height)
highlightbackground=
當小部件沒有焦點時,用於高亮邊框的顏色是什么顏色?。默認值是特定於系統的,但通常與標准背景色相同。(highlightBackground/HighlightBackground)
highlightcolor=
當小部件具有焦點時,用於高亮邊框的顏色是什么顏色?。默認值是特定於系統的。(highlightColor/HighlightColor)
highlightthickness=
突出邊框的寬度。默認值為0(無高亮邊框)。.(highlightThickness/HighlightThickness)
image=
要在小部件中顯示的圖像。該值應該是一個影像,bitmapimage,或兼容的對象。如果指定,則優先於文本和位圖選項。(image/Image)
justify= 證明…有理;為…辯護;對…作出解釋
定義如何對齊多行文本。使用LEFT, RIGHT, or CENTER.注意,要在小部件中定位文本,請使用錨點選項。默認值是 CENTER. (justify/Justify)
padx=
在文本周圍添加額外的水平填充。默認值是1像素。(padX/Pad)
pady=
在文本周圍添加額外的垂直填充。默認值是1像素。(padY/Pad)
relief=
邊框裝飾。默認是FLAT的。其他的值是SUNKEN, RAISED, GROOVE, and RIDGE. (relief/Relief)
state=
標簽狀態。此選項控制標簽的呈現方式。默認值NORMAL. 還可以選擇ACTIVE and DISABLED. (state/State)
takefocus=
如果為真,則小部件接受輸入焦點。默認為false。(takeFocus/TakeFocus)
text=
在標簽上顯示的文本。文本可以包含換行。如果位圖或圖像選項,這個選項被忽略。(text/Text)
textvariable=
標簽的Tkinter變量(通常是一個StringVar)。如果變量被更改,標簽文本將被更新。(textVariable/Variable)
underline=
與文本選項一起使用,表示字符應加下划線(如鍵盤快捷鍵)。默認是-1 (沒有下划線). (underline/Underline)
width=
標簽的寬度。如果標簽顯示文本,則以文本單位給出大小。如果標簽顯示圖像,則以像素(或屏幕單元)給出大小。如果大小設置為0,或者省略,則基於標簽內容計算。(width/Width)
wraplength=
確定何時將標簽的文本包裝成多行。這是在屏幕單元中給出的。默認值0 (沒包裝). (wrapLength/WrapLength)

photo = PhotoImage(file="icon.gif")
w = Label(parent, image=photo)
w.photo = photo
w.pack()


Listbox:列表框
config(**options) [#]

**options
Widget options.
activestyle=
默認是下划線. (參數數據庫名字activeStyle, 類名字是ActiveStyle)
background=
默認值‘SystemButtonFace’. (background/Background)
bg=
Same as background.
borderwidth=
默認值 2. (borderWidth/BorderWidth)
bd=
Same as borderwidth.
cursor= 光標
無默認值. (cursor/Cursor)
disabledforeground= 禁用前景
默認是系統指定的。 (disabledForeground/DisabledForeground)
exportselection= 輸出選擇
默認自是1. (exportSelection/ExportSelection)
font=
默認為系統指定的字體. (font/Font)
foreground=
默認系統指定的前景色. (foreground/Foreground)
fg=
Same as foreground.
height=
默認高度10. (height/Height)
highlightbackground=
默認為系統指定的高亮背景色。 (highlightBackground/HighlightBackground)
highlightcolor=
默認為系統指定的高亮色。(highlightColor/HighlightColor)
highlightthickness=
高光厚度,默認值是1. (highlightThickness/HighlightThickness)
listvariable= 列表變量
無默認值. (listVariable/Variable)
relief=
邊框裝飾。默認是SUNKEN的。其他的值是FLAT, RAISED, GROOVE, and RIDGE. (relief/Relief)
selectbackground=
選擇背景色,默認為系統指定. (selectBackground/Foreground)
selectborderwidth=
選擇邊框寬度,默認值為 1. (selectBorderWidth/BorderWidth)
selectforeground=
選擇顯示的前景色,默認為系統指定. (selectForeground/Background)
selectmode= 選擇模式
默認值是:BROWSE. (selectMode/SelectMode)
setgrid= 設置網格
默認值是0. (setGrid/SetGrid)
state=
狀態默認值是: NORMAL.還可以選擇ACTIVE and DISABLED (state/State)
takefocus=
如果為真,則小部件接受輸入焦點。無默認值,應該默認值為False (takeFocus/TakeFocus)
width=
寬度默認值為:20. (width/Width)
xscrollcommand=
水平滾動條命令,無默認值。 (xScrollCommand/ScrollCommand)
yscrollcommand=
垂直滾動條命令,無默認值 (yScrollCommand/ScrollCommand)


activate(index) [#]
激活給定下標的值(它將標有下划線)。激活項可參照使用激活下標。
index
指定下標.

get(first, last=None) [#]
從列表中獲取一個或多個項。此函數返回與給定索引(或給定索引范圍中的字符串)相對應的字符串。使用get(0,END)獲取列表中所有項的列表。使用get(ACTIVE) 獲取激活項(下划線).
first
返回第一項First.
last
Last返回最后一項.如不選擇,返回單一項.
Returns:
字符串列表.


Spinbox : 紗箱
Spinbox(master=None, **options) (class) [#]
紗箱部件是標准Tkinter輸入控件的一個變種,它可以用來從一個固定數量的價值選擇。
config(**options) [#]
**options
activebackground=
默認值是系統指定 (activeBackground/Background)
background=
默認值是系統指定 (background/Background)
bd=
Same as borderwidth.
bg=
Same as background.
borderwidth=
邊框寬度。通常是幾像素,由系統指定. (borderWidth/BorderWidth)
buttonbackground=
背景色. 默認值是系統指定 (Button.background/Background)
buttoncursor=
當鼠標經過按鈕時使用的光標. 無默認值. (Button.cursor/Cursor)
buttondownrelief=
抬起按鈕時邊框的樣式. 默認值是 RAISED. (Button.relief/Relief)
buttonuprelief=
點下按鈕時邊框的樣式. 默認值是 RAISED. (Button.relief/Relief)
command=
按鈕點擊時回調的函數或方法. 無默認值. (command/Command)
cursor=
當鼠標經過輸入框時顯示的光標. 默認值是文本插入光標 (通常是XTERM). (cursor/Cursor)
disabledbackground=
當失效時顯示的背景色. 默認值是系統指定. (disabledBackground/DisabledBackground)
disabledforeground=
當失效時顯示的文本顏色. 默認值是系統指定. (disabledForeground/DisabledForeground)
exportselection=
默認值是 True. (exportSelection/ExportSelection)
fg=
Same as foreground.
font=
使用的字體. 默認值是系統指定 (font/Font)
foreground=
文本顏色. 默認值是系統指定 (foreground/Foreground)
format=
字符串格式. 無默認值. (format/Format)
from=
最小值. 與to一起使用來限制紗箱的范圍.
注意:from是python的關鍵字,在使用時要加一個下划線(from_). (from/From)
highlightbackground=
默認值是系統指定 (highlightBackground/HighlightBackground)
highlightcolor=
默認值是系統指定 (highlightColor/HighlightColor)
highlightthickness=
無默認值. (highlightThickness/HighlightThickness)
increment=
默認值是 1.0. (increment/Increment)
insertbackground=
光標插入使用的顏色. (insertBackground/Foreground)
insertborderwidth=
插入光標的寬度. 如果設定一個非零的值, 光標會使用RAISED 邊框風格來繪制. (insertBorderWidth/BorderWidth)
insertofftime=
與insertontime相同, 參數控制光標綁定. 值以毫秒為單位. (insertOffTime/OffTime)
insertontime=
See insertofftime. (insertOnTime/OnTime)
insertwidth=
插入光標寬度. 通常是1/2個像素。 (insertWidth/InsertWidth)
invalidcommand=
無默認值. (invalidCommand/InvalidCommand)
invcmd=
Same as invalidcommand.
justify=
默認值是 LEFT. (justify/Justify)
readonlybackground=
默認值是系統指定 (readonlyBackground/ReadonlyBackground)
relief=
默認值是 SUNKEN. (relief/Relief)
repeatdelay=
與repeatinterval相同, 這個選項控制按鈕自動重復間隔.值以毫秒為單位。 (repeatDelay/RepeatDelay)
repeatinterval=
See repeatdelay. (repeatInterval/RepeatInterval)
selectbackground=
默認值是系統指定 (selectBackground/Foreground)
selectborderwidth=
無默認值. (selectBorderWidth/BorderWidth)
selectforeground=
默認值是系統指定 (selectForeground/Background)
state=
值選擇 NORMAL, DISABLED, or “readonly”. 默認值是 NORMAL. (state/State)
takefocus=
指示用戶可以使用tab鍵移動到這個小部件。默認值是空字符串,這意味着只有當它具有任何鍵盤綁定時,條目小部件才會接受焦點。 (默認是開啟的). (takeFocus/TakeFocus)
textvariable=
無默認值. (textVariable/Variable)
to=
See from. (to/To)
validate=
校驗模式. 默認值是 NONE. (validate/Validate)
validatecommand=
校驗回調函數. 無默認值. (validateCommand/ValidateCommand)
values=
器件包含校驗值的一個元組. 覆蓋from/to/increment. (values/Values)
vcmd=
Same as validatecommand.
width=
寬, 以字符為單位. 默認值是 20. (width/Width)
wrap=
如果TRUE,向上和向下按鈕將環繞。 (wrap/Wrap)
xscrollcommand=
用於連接一個紗箱水平滾動條。此選項應設置為相應的滾動條的設置方法。(xScrollCommand/ScrollCommand)


Text:文本
config(**options) [#]
**options
autoseparators=
默認值是 1. (autoSeparators/AutoSeparators)
background=
默認值是系統指定. (the database name is background, the class is Background)
bg=
Same as background.
borderwidth=
默認值是 2. (borderWidth/BorderWidth)
bd=
Same as borderwidth.
cursor=
默認值是 “xterm”. (cursor/Cursor)
exportselection=
默認值是 1. (exportSelection/ExportSelection)
font=
默認值是系統指定. (font/Font)
foreground=
默認值是系統指定. (foreground/Foreground)
fg=
Same as foreground.
height=
默認值是 24. (height/Height)
highlightbackground=
默認值是系統指定. (highlightBackground/HighlightBackground)
highlightcolor=
默認值是系統指定. (highlightColor/HighlightColor)
highlightthickness=
默認值是 0. (highlightThickness/HighlightThickness)
insertbackground=
默認值是系統指定. (insertBackground/Foreground)
insertborderwidth=
默認值是 0. (insertBorderWidth/BorderWidth)
insertofftime=
默認值是 300. (insertOffTime/OffTime)
insertontime=
默認值是 600. (insertOnTime/OnTime)
insertwidth=
默認值是 2. (insertWidth/InsertWidth)
maxundo=
默認值是 0. (maxUndo/MaxUndo)
padx=
默認值是 1. (padX/Pad)
pady=
默認值是 1. (padY/Pad)
relief=
默認值是 SUNKEN. (relief/Relief)
selectbackground=
默認值是系統指定. (selectBackground/Foreground)
selectborderwidth=
默認值是 0. (selectBorderWidth/BorderWidth)
selectforeground=
默認值是系統指定. (selectForeground/Background)
setgrid=
默認值是 0. (setGrid/SetGrid)
spacing1=
默認值是 0. (spacing1/Spacing)
spacing2=
默認值是 0. (spacing2/Spacing)
spacing3=
默認值是 0. (spacing3/Spacing)
state=
默認值是 NORMAL. (state/State)
tabs=
無默認值. (tabs/Tabs)
takefocus=
無默認值. (takeFocus/TakeFocus)
undo=
默認值是 0. (undo/Undo)
width=
默認值是 80. (width/Width)
wrap=
默認值是 CHAR. (wrap/Wrap)
xscrollcommand=
無默認值. (xScrollCommand/ScrollCommand)
yscrollcommand=
無默認值. (yScrollCommand/ScrollCommand)

 

針對bind_all方法的一些使用

 

 1 關於bind_all方法,第一個參數對應的內容很多。我在這里盡可能把常用的羅列一下,免得大家再去單獨搜索。
 2 
 3 bind_all('<KeyPress-Up>', eventhandler) 鍵盤方向鍵上鍵
 4 bind_all('<KeyPress-Down>', eventhandler) 鍵盤方向鍵下鍵
 5 bind_all('<KeyPress-Left>', eventhandler) 鍵盤方向鍵左鍵
 6 bind_all('<KeyPress-Right>', eventhandler) 鍵盤方向鍵右鍵
 7 bind_all('<KeyPress>', eventhandler) 鍵盤鍵位通用處理
 8 bind_all('<Enter>', eventhandler) 按下Enter鍵
 9 bind_all('a', eventhandler) 鍵盤小寫字母a
10 bind_all('A', eventhandler) 鍵盤大寫字母A
11 bind_all('<Control-A>', eventhandler) Control+shift+a
12 bind_all('<Control-a>', eventhandler) Control+a
13 bind_all('<Control-Alt-b>', eventhandler) Control+Alt+b
14 
15 相似的,Tkinter支持下面這些按鍵。但是需要知道的是不支持
16 
17 Control—Alt
18 
19 Cancel/Break/BackSpace/Tab/Return/Sift_L/Shift_R/Control_L/Control_R/Alt_L/Alt_R/Pause
20 
21 Caps_Loack/Escape/Prior(Page Up)/Next(Page Down)/End/Home/Left/Up/Right/Down/Print/Insert/Delete/
22 
23 F1-12/Num_Lock/Scroll_Lock

 

事件用字符串定義,有一個特殊的語法規則:

<modifier-type-detail>

type字段是最重要的,它指出了事件的種類,可以指定為Button,Key或者Enter,Configure等等。modifier和detail字段可以提供一些附加信息,在大多數情況下可以不指定。還有很多方法可以簡化事件字符串,比如:為了匹配一個鍵盤鍵,你可以省略尖角括號,直接用 鍵 即可。除非它是空格 , 或本身就是尖括號。 
讓我們來看看最常用的事件格式: 
事件格式:

<Button-1>

一個鼠標點擊事件。1代表左鍵,2代表中鍵,3代表右鍵。當你在一個widget上點擊鼠標按鍵,tkinter會自動捕獲並觸發event,注意,當按鍵被抬起時才會執行handler。鼠標的位置(相對於widge)x,y會被發往event對象傳入handler。你也可以這樣:,<1>,它們是等價的。我比較喜歡這種方式。

<B1-Motion>

鼠標拖動事件。1代表按下左鍵拖動,2代表中鍵,3代表右鍵。同樣的,鼠標的x,y會以event對象方式被送往handler。

<ButtonRelease-1>

鼠標按下之后釋放

<Double-Button-1>

雙擊鼠標

<Enter>

注意,這里是鼠標指針進入到widget里,並不是代表按下鍵盤上的Enter鍵。

<Leave>

和上面的進入對應,鼠標離開widget。

<FocusIn> <FocusOut>
<Return> <Cancel> <BackSpace> <Tab> <Shift_L> <Control_L> <Alt_L> <Home> <Left> <Up> <Right> <Down> <Delete> <F1> <F2>

這些按鍵都和鍵盤上的一一對應。

<Key>

隨便一個按鍵,鍵值會以char的格式放入event對象。

a b c ... 1 2 ... 

對應鍵盤上的按鍵

<Configure>

這個關鍵了,如果widget的大小改變了,或者是位置,新的大小(width和height)會打包到event發往handler。

 

from tkinter import *

root = Tk()

root.title("窗口測試")

def eventhandler(event):
    if event.keysym == 'Left':
        print('左鍵')
    elif event.keysym == 'Right':
        print('右鍵!')
    elif event.keysym == 'Up':
    	print('向上鍵!')
    elif event.keysym == 'Down':
    	print('向下鍵。')
    elif event.keysym == 'b':
    	print('b鍵。')
    else:
    	print(event.keysym, '無效輸入!')


lab = Label(root, text='just a label')
lab.bind_all('<KeyPress>', eventhandler)
lab.pack()

root.mainloop()

 結果: 

向上鍵!
右鍵!
向下鍵。
左鍵
右鍵!
b鍵。
Shift_L 無效輸入!
B 無效輸入!
Return 無效輸入!
Return 無效輸入!
?? 無效輸入!
Shift_L 無效輸入!
?? 無效輸入!
s 無效輸入!
f 無效輸入!

 

 

 

大部分來自: http://effbot.org/tkinterbook/ 

還可以參考:https://docs.python.org/3/library/tkinter.ttk.html  

仍然參考: http://infohost.nmt.edu/tcc/help/pubs/tkinter/web/index.html

補充一個小知識

關於引用模塊,引入類的使用方式

from .xx import xx
from ..xx import xx
會出現一些導入錯誤信息
文件夾被python解釋器視作package需要滿足兩個條件:

  1、文件夾中必須有 __init__.py文件,該文件可以為空,但必須存在該文件。

  2、不能作為頂層模塊來執行該文件夾中的py文件(即不能作為主函數的入口)。


或者采用系統路徑擴展的方法
import sys
sys.path.append(r'../Common')
import CommonUtil
這樣就能充分利用路徑的變化,來進行引用。

 

或者設置環境變量PYTHONPATH。

 

在最新的python3.0中,還可以編寫一個 .pth  的文件來記錄路徑,

程序在執行時,可以加載這個文件。相當於設置環境變量PYTHONPATH一種替代方案。

可以將其放在python安裝目錄的頂層。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM