一、Python Tkinter簡介
Python Tkinter是Python的標準GUI庫,可以用於創建窗口和GUI應用程序。Tkinter是基於Tk圖形庫開發的,可以在所有操作系統上運行,包括Windows、Linux和macOS。Tkinter提供了豐富的GUI組件,如按鈕、標籤、文本框、菜單等,可以使用Python語言輕鬆構建GUI界面。
二、Tkinter基礎組件
1、Label:用於顯示文本或圖像。
from tkinter import *
root = Tk()
label = Label(root, text="Hello, Tkinter!")
label.pack()
root.mainloop()
2、Button:用於添加按鈕。
from tkinter import *
root = Tk()
def callback():
print("Button clicked!")
button = Button(root, text="Click me!", command=callback)
button.pack()
root.mainloop()
3、Entry:用於添加文本輸入框。
from tkinter import *
root = Tk()
entry = Entry(root)
entry.pack()
root.mainloop()
4、Checkbutton:用於添加複選框。
from tkinter import *
root = Tk()
var = IntVar()
checkbutton = Checkbutton(root, text="Check me!", variable=var)
checkbutton.pack()
root.mainloop()
5、Radiobutton:用於添加單選框。
from tkinter import *
root = Tk()
var = IntVar()
radiobutton1 = Radiobutton(root, text="Option 1", variable=var, value=1)
radiobutton1.pack()
radiobutton2 = Radiobutton(root, text="Option 2", variable=var, value=2)
radiobutton2.pack()
root.mainloop()
三、Tkinter布局管理
1、pack布局管理:以塊的方式對組件進行排列,常用於簡單布局。
from tkinter import *
root = Tk()
label1 = Label(root, text="Label 1")
label1.pack()
label2 = Label(root, text="Label 2")
label2.pack()
label3 = Label(root, text="Label 3")
label3.pack()
root.mainloop()
2、grid布局管理:以網格的方式對組件進行排列,常用於複雜布局。可以指定行和列來放置組件。
from tkinter import *
root = Tk()
label1 = Label(root, text="Label 1")
label1.grid(row=0, column=0)
label2 = Label(root, text="Label 2")
label2.grid(row=0, column=1)
label3 = Label(root, text="Label 3")
label3.grid(row=1, column=0, columnspan=2)
root.mainloop()
3、place布局管理:以絕對位置的方式對組件進行排列,常用於特殊布局。
from tkinter import *
root = Tk()
label1 = Label(root, text="Label 1")
label1.place(x=0, y=0)
label2 = Label(root, text="Label 2")
label2.place(x=50, y=50)
root.mainloop()
四、Tkinter事件和回調函數
1、事件:當用戶執行某個操作或者某個條件滿足時,觸發事件。
2、回調函數:當事件被觸發時,執行預定義的回調函數。
from tkinter import *
root = Tk()
def callback(event):
print("Button clicked!")
button = Button(root, text="Click me!")
button.bind("", callback)
button.pack()
root.mainloop()
五、完整代碼示例
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Tkinter Demo</title>
</head>
<body>
<h1>Tkinter Demo</h1>
<p>This demo shows how to use Python Tkinter to build a GUI interface.</p>
<form>
<label>Enter your name:</label>
<input type="text" name="name">
<button type="submit" name="submit">Submit</button>
</form>
<script>
from tkinter import *
root = Tk()
root.title("Tkinter Demo")
# Create a label widget
label = Label(root, text="Hello, Tkinter")
label.pack()
# Create an Entry widget
entry = Entry(root)
entry.pack()
# Create a Button widget
def callback():
print("Button clicked!")
button = Button(root, text="Click me!", command=callback)
button.pack()
root.mainloop()
</script>
</body>
</html>
原創文章,作者:SSYAF,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/324808.html