前言:
Python提供多个不同的图形化开发库,例如常用的四种有:
Tkinter&wxPython&Jython&pyQt
在这里之介绍第一种Tkinter
在你看到这篇文章时,如果你知道你是来入门Tkinter图形窗口的,那么欢迎,如果不清楚Tkinter是干什么用的,那么请移步了解后再来!
本篇文章带你最详细解说入门Tkinter!
Part1(创建与Label文本控件):
创建你的窗口,导入tkinter模块可以使用如下两种方式:
from tkinter import Tk, Label
import tkinter
区别在于第一种只导入了tkinter中的Tk和Label模块,使用方式也会不同:
- 第一种调用Tk只需要 TK()
- 第二种导入方式则需要 tkinter.Tk()
- 两种方式均可,也经常二者同时用,更方便
那么开始…
# from tkinter import Tk, Label
import tkinter
# 创建主窗口
win = tkinter.Tk()
# 设置窗口标题
win.title("Tkinter Window")
# 设置窗口大小和位置(宽高之间使用字符x)
win.geometry("500x470+500+170")
# 进入消息循环
# label标签组件,可以显示文本和位图
# anchor:位置八个方位(N NE E SE S SW W NW CENTER)
# wraplength:指定text文本多少宽度后换行
# justify:多行文本对齐(left,center,right)
label = tkinter.Label(win, text="我是RedMaple", bg="YellowGreen", font=("宋体", 15), anchor=tkinter.CENTER,
width=20, height=5, wraplength=60, justify="left")
# 显示控件
label.pack()
# 程序运行起来
win.mainloop()
Part2(Button按钮控件):
import tkinter
win = tkinter.Tk()
win.title("button控件")
win.geometry("300x300+200+200")
def my_print():
print("我是谁?")
win2 = tkinter.Tk()
win2.title("我是谁?")
win2.geometry("400x200+200+200")
win2.mainloop()
# 按钮控件
# command:后面跟一个函数名,不要(),带()自动运行
button1 = tkinter.Button(win, text="按钮1", width=10, height=3, command=my_print, bg="green")
button1.pack()
win.mainloop()
Part3(Entry输入控件):
import tkinter
from tkinter import Tk, Entry, Button
win = Tk()
win.title("Entry控件")
win.geometry("400x300+200+200")
# Entry输入控件
# textvariable绑定文本变量,在代码的其他位置通过变量获取或设置该输入控件内容
info = tkinter.Variable()
entry = Entry(win, textvariable=info)
entry.pack()
# 输入内容显示*号
entry2 = Entry(win, show="*")
entry2.pack()
def dida():
# 使用变量名.get()可以提取变量(info)中的数据,在此测试转换类型
print(type(info.get()))
# 使用entey.get也可以获取
print(entry.get())
# entry.set(110) #无法使用控件对象赋值
# 只能使用绑定的变量赋值
info.set("我是谁?")
# 按钮创建
button = Button(win, text="按钮", command=dida, height=3, width=10, bg="YellowGreen")
button.pack()
win.mainloop()
时间关系,今天就介绍这三个控件。下次再见!