ython可以使用多种GUI库来创建窗口页面,例如Tkinter、PyQt、wxPython等。
本篇文章主要讲述如何使用tkinter。
import tkinter as tk
这时如果运行的话会提示:
ModuleNotFoundError: No module named ‘tkinter’
执行如下命令下载即可:
sudo apt-get install tcl-dev tk-dev python3-tk
root = tk.Tk()
root.title("工具类")
#设置窗口大小
root.geometry("500x500")
添加标签
label = tk.Label(root, text="标签内容")
label.pack()
root.mainloop()
修改label属性
label = tk.Label(root, text="热门",bg="red")
label.pack()
label = tk.Label(root, text="关注",bg="yellow")
label.pack()
label = tk.Label(root, text="商城",bg="green")
label.pack()
此时三个tabel 上下居中显示
修改label的位置等属性
label1 = tk.Label(window, text="Label 1", bg="red")
label1.pack(side=tk.LEFT, fill=tk.Y)
label2 = tk.Label(window, text="Label 2", bg="green")
label2.pack(side=tk.TOP, fill=tk.X)
label3 = tk.Label(window, text="Label 3", bg="blue")
label3.pack(side=tk.RIGHT, fill=tk.Y)
表格布局
使用row 和column来控制行列属性
label1 = tk.Label(root, text="热门", bg="red")label1.grid(row=0, column=0)label2 = tk.Label(root, text="商城", bg="green")label2.grid(row=0, column=1)label3 = tk.Label(root, text="朋友", bg="blue")label3.grid(row=1, column=0)label4 = tk.Label(root, text="关注", bg="blue")label4.grid(row=1, column=1)
place 属性
这就和android中的绝对布局一样,根据坐标来排列.
label1 = tk.Label(root, text="朋友", bg="red")
label1.place(x=10, y=10)
label2 = tk.Label(root, text="关注", bg="green")
label2.place(x=30, y=30, width=100, height=50)
label3 = tk.Label(root, text="商城", bg="gray")
label3.place(x=100, y=100)
button
#!/usr/bin/python
# coding=utf-8
# 导入Tkinter库
import tkinter as tk
from tkinter import messagebox
# 创建窗口
root = tk.Tk()
root.title("工具类")
root.geometry("500x500")
button = tk.Button(root, text="隐私协议",bg="green")
button.pack()
def btnClick(event):
name = '隐私协议'
text = '这里是隐私协议的内容.....'
messagebox.showinfo(name,text)
#点击事件绑定
button.bind('<1>', btnClick)
root.mainloop()