如果我们想要使用Python创建一个GUI界面,我们应该使用哪个库?Python有没有实现这个功能的库?
答案是肯定的,Python的库这么多,肯定有实现上述功能的库,那么我们应该使用哪一个库呢?我们这里推荐使用Python内置的一个库——tkinter。该模块以 Tcl/tk 作为接口,提供了大量的 GUI 支持。如果想要创建一个美观地、符合操作系统平台的 GUI,推荐使用主题化的模块 tkinter.ttk。
首先我们来看一个简单的例子,通过简单示例来介绍一下tkinter的使用。代码如下:
from tkinter import Tk
root = Tk()
root.title("拜仁慕尼黑")
root.geometry("400x400+200+200")
root.mainloop()
代码显示效果如下:
当我们需要为窗口中的模块区域创建不同于窗口的主题时,我们应该如何处理呢?我们可以使用Frame来实现我们的需求,Frame 支持参数传入来说设定容器的尺寸。也支持以索引的赋值的方式修改容器的默认属性,比如修改容器的背景颜色。示例代码如下:
from tkinter import Tk, Frame
root = Tk()
root.title("拜仁慕尼黑")
width = 400
height = 400
x = '+200'
y = '+200'
root.geometry(f"{width}x{height}{x}{y}")
frame = Frame(root, height=height, width=width)
frame['background'] = 'orange' # 设定背景颜色
frame.pack() # 放置组件
root.mainloop()
代码显示效果如下:
在窗口中需要为某块区域创建一个“标签”,用于显示提示信息给用户时,我们可以使用label来添加提示信息。代码如下:
from tkinter import Tk, Frame, Label
root = Tk()
root.title("MyApp")
root['background'] = 'yellow' # 修改根窗口的背景
width = 400
height = 400
x = '+200'
y = '+200'
root.geometry(f"{width}x{height}{x}{y}")
frame = Frame(root, height=height, width=width)
frame['background'] = 'red' # 设定背景颜色
frame.pack()
label = Label(root, text="Player")
label['background'] = 'blue' # 设定背景颜色
label.pack()
root.mainloop()
label同样支持载入图片,如下所示:
from tkinter import Tk, Frame, Label, PhotoImage
root = Tk()
root.title("拜仁慕尼黑")
root['background'] = 'yellow' # 修改根窗口的背景
width = 400
height = 400
x = '+200'
y = '+200'
root.geometry(f"{width}x{height}{x}{y}")
frame = Frame(root, height=height, width=width)
frame['background'] = 'red' # 设定背景颜色
frame.pack()
image = PhotoImage(file = 'bayern.png')
label = Label(root, image=image)
label.pack()
root.mainloop()
结果如下图所示:
本文主要介绍了tkinter库的一些基本使用,需要提醒大家的是,Python3.x版本的库名为tkinter,Python2.x版本的库名为Tkinter。后面我会将会使用tkinter编写一些有趣的GUI小程序,敬请期待!
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。