简单组件学习
Label 标签
Label(标签)主要用于显示文本信息,也可以显示图像。其常见属性如下:
width,height:
用于指定区域大小,如果显示是文本,则以单个英文字符大小为单位(一个汉字宽度占2 个字符位置,高度和英文字符一样);如果显示是图像,则以像素为单位。默认值是根据具体显示的内容动态调整。
font
指定字体和字体大小,如:font = (font_name,size)
image
:显示在Label 上的图像,目前tkinter 只支持gif 格式。
fg 和bg:
fg(foreground):前景色、bg(background):背景色
justify
:针对多行文字的对齐,可设置justify 属性,可选值"left", "center" or "right"
"""测试Label 组件的基本用法,使用面向对象的方式"""
from tkinter import *
class Application(Frame):
def __init__(self, master=None):
super().__init__(master) # super()代表的是父类的定义,而不是父类 对象
self.master = master
self.pack()
self.createWidget()
def createWidget(self):
"""创建组件"""
self.label01 = Label(self,text="我最棒", width=10,height=2,bg="black", fg="white")
self.label01["text"]="ccc"
self.label01.config(fg="red",bg="green")
self.label01.pack()
self.label02 = Label(self,text="宇宙中心", width=10,height=2,bg="blue", fg="white",font=("黑体", 30))
self.label02.pack()
# 显示图像
global photo # 把photo 声明成全局变量。如果是局部变量,本方法执行完毕后,图像对象销毁,窗口显示不出图像。
photo = PhotoImage(file=r"F:\python_l\pythonProject1\60011.gif")
self.label03 = Label(self, image=photo)
self.label03.pack()
self.label04 = Label(self, text="重庆沙坪坝\n 最棒程序猿\n 好帅,样样都行",
borderwidth=5,relief="groove",justify="right")
self.label04.pack()
if __name__ == '__main__':
root = Tk()
root.geometry("400x560+200+300")
app = Application(master=root)
root.mainloop()
Options 选项详解
通过学习Label 组件,我们发现可以通过Options 设置组件的属性,从而控制组件的各种状态。比如:**宽度、高度、颜色、位置等等。**我们可以通过三种方式设置Options 选项,这在各种GUI 组件中用法都一致。
- 创建对象时,使用可变参数
fred = Button(self, fg="red", bg="blue")
- 创建对象后,使用字典索引方式
fred["fg"] = "red"
fred