[Python]使用Tinker製作GUI介面

Arthur
4 min readFeb 28, 2020

--

Python筆記

Tinker是Python用來製作使用者介面很方便的函示庫,GUI(圖形使用者介面)不管用於Demo或給客戶案子都十分重要、方便。

1.最基本的產生視窗

import tkinter as tkwin = tk.Tk() #主視窗
#------按鍵新增-------
#--------------------
win.mainloop() #程式無限循環
視窗

依照上面程式碼就能做出一個視窗並且持續在那。

2.更改標題、加入文字與按鍵功能

import tkinter as tkdef hello_world(win1):
print("hello world")
hello_txt = tk.Label(win1,text = "Hello World")
hello_txt.pack() #加入文字進視窗
win = tk.Tk() #主視窗
#------按鍵新增-------
win.wm_title("Expample")
hi_button = tk.Button(win, text ="hi",bg = "yellow", command=lambda: hello_world(win))
hi_button.pack() #加入按鈕進視窗
#--------------------
win.mainloop() #程式無限循環
按下按鈕前
按下按鈕後
  • .wm_title 能修改左上標題
  • tk.button 能針對按鈕做功能設計(顏色、功能、長寬、字型大小顏色、還能指定案件要自己喜歡的圖案)
  • tk.Label能在視窗顯示文字(範例我是直接當按鍵的功能使用,直接顯示也行)
  • 宣告完元件都要加個.pack()才會顯示在視窗裡(重要!!!)

3.加入圖片

import tkinter as tkwin = tk.Tk() #主視窗
#------按鍵新增-------
win.wm_title("Twice <3")
img = tk.PhotoImage(file="D:/pycode/twice.png") #圖片位置
img_label = tk.Label(win, image = img)
img_label.pack()
#--------------------
win.mainloop() #程式無限循環
Twice <3

加入圖片,用tk.Label加入視窗內,附帶一提我在寫程式後才把圖片從網路抓下來,一直顯示他抓不到圖檔,後來我重開我的編譯器(Spyder)後就好了,給有同樣困擾的人參考一下。

4.訊息視窗(messagebox)

import tkinter as tk
from tkinter import messagebox
def Love_Twice():
messagebox.showinfo("Twice~", "Twice Fighting!!")
win = tk.Tk() #主視窗
#------按鍵新增-------
win.wm_title("Twice <3")
img = tk.PhotoImage(file="D:/pycode/twice.png")
img_label = tk.Label(win, image = img)
img_label.pack()
hi_button = tk.Button(win, text ="I love Twice",bg = "pink", command=lambda: Love_Twice())
hi_button.pack() #加入按鈕進視窗
#--------------------
win.mainloop() #程式無限循環

可以用來做警示,messagebox也能做設定有兩個選擇的(messagebox.askyesno(...)之類)。

這邊整理最基礎與我覺得最常用到GUI介面的設計,有問題歡迎在留言板上發問喔~

--

--

Arthur
Arthur

Written by Arthur

Cooking, Coding and Reading

No responses yet