Python-GUI Tkinter模塊
01
Tkinter
Tkinter模塊是Python的標準Tk GUI工具包的介面,它並不是必須掌握的,但是掌握一個Python的標準圖形庫還是非常有意思的一件事。
它可以跨平台運行在Windows,Linux和Mac等系統上。
這篇文章不會介紹如何靈活地運用Tkinter,而是闡述Tkinter這個庫包括什麼,它能幹什麼!
02
第一個Tk-GUI
from tkinter import *
root=Tk()
root.title("first tk gui")
root.geometry("500x200")
x = Label(root,text="Hello",bg="green",font=("Arial",12),width=15,height=2)
x.pack()
x.mainloop()
首先導入tkinter 模塊,這個模塊包括了所需要的所有的類和函數
然後,需要創建一個(根)窗口,它是一個普通的窗口,帶有標題欄、最小化按鈕、最大化按鈕等,即:root = Tk() ,調用title介面,geometry分別設置根窗口的標題,大小。
然後我們就可以在該窗口上創建一個Label,即貼一個標籤,這個Label可以顯示文本、圖標、圖像等等。我們這裡使用text來指定要顯示的文本,而第一個參數root,表明x的父控制項是root,bg屬性表示label的背景色,font指明文本所用字體,width,height指明label的寬度和高度。
接下來,調用這個Label的pack方法,pack方法屬於Pack類(屬於幾何管理器), tk中的每一個控制項都繼承自 class Widget(BaseWidget, Pack, Place, Grid),Widget都繼承於Pack,Place,Grid,它們都屬於幾何管理器類。
最後一行代碼,x.mainloop()即可進入事件循環了,mainloop定義在Misc類中(Methods defined on both toplevel and interior widgets)。
這樣一個最簡單的界面程序就完成了。
03
梳理第一個GUI用到的類
Wm(Provides functions for the communication with the window manager);Misc(Methods defined on both toplevel and interior widgets)
---BaseWidget
---Widget
Pack, Grid, Place
------- Label
04
Tkinter控制項梳理
Button 按鈕控制項;在程序中顯示按鈕
Canvas 畫布控制項;顯示圖形元素,如線條或文本
Checkbutton 多選框控制項,用於在程序中提供多項選擇框
Entry 輸入控制項;用於顯示簡單的文本內容
Frame 框架控制項;在屏幕上顯示一個矩形區域,多用來作為容器
Label 標籤控制項;可以顯示文本和點陣圖
Listbox 列表框控制項;在Listbox窗口小部件是用來顯示一個字元串列表給用戶
Menubutton 菜單按鈕控制項,由於顯示菜單項。
Menu 菜單控制項;顯示菜單欄,下拉菜單和彈出菜單
Message 消息控制項;用來顯示多行文本,與label比較類似
Radiobutton 單選按鈕控制項;顯示一個單選的按鈕狀態
Scale 範圍控制項;顯示一個數值刻度,為輸出限定範圍的數字區間
Scrollbar 滾動條控制項,當內容超過可視化區域時使用,如列表框
Text 文本控制項;用於顯示多行文本
Toplevel 容器控制項;用來提供一個單獨的對話框,和Frame比較類似
Spinbox 輸入控制項;與Entry類似,但是可以指定輸入範圍值
PanedWindow PanedWindow是一個窗口布局管理的插件,可以包含一個或者多個子控制項。
LabelFrame labelframe 是一個簡單的容器控制項。常用與複雜的窗口布局。
tkMessageBox 用於顯示你應用程序的消息框。
05
Tkinter共用屬性
Dimension控制項大小;
Color控制項顏色;
Font控制項字體;
Anchor錨點;
Relief控制項樣式;
Bitmap點陣圖;
Cursor游標;
※Python3爬取1024圖片
※自學Python需要怎樣的基礎和準備
TAG:Python |