Python基础学习-Tkinter模块(八)
作者:互联网
1 Message组件
Label组件只能显示单行,Message组价用来显示多行文本信息,并且能够自动换行,调整适合文本的尺寸。
from tkinter import *
root = Tk()
w1 = Message(root, text="这时一则消息",width=100)
w1.pack()
w2 = Message(root,text="这时一则大大大大大大消息",width=100)
w2.pack()
mainloop()
输出:
补充:
Message 组件用于显示简单的文本消息,通常你可以使用Label来代替。如果你希望使用多种字体来显示文本,那么应该使用 Text 组件。
Message组件参数
Message(master=None,**options)
master----父组件
**options----组件选项,下方各表格详细列举了各个选项的具体含义和用法:
选项 | 含义 |
---|---|
activebackground | 设置当Spinbox处于ACTIVE状态下的背景颜色 |
background | 设置背景颜色 默认值由系统指定 |
bg | 跟background一样 |
borderwidth | 设置边框宽度 默认值是1或2像素 |
buttonbackground | 设置调节箭头的背景颜色 |
buttoncursor | 指定当鼠标在调节箭头上方的鼠标样式 |
buttondownrelief | 指定向下调节箭头的样式 默认值是RAISED 还可以设置为FLAT,SUNKEN,GROOVE和RIDGE |
buttonup | 指定向上调节箭头的样式 默认值是RAISED 还可以设置为FLAT,SUNKEN,GROOVE和RIDGE |
command | 指定一个函数,当用户点击调节箭头的时候将自动调用该函数 注意:当用户直接在输入框中输入数据时并不会触发该函数 |
cursor | 指定当鼠标在Spinbox上飘过的时候的鼠标样式 默认值由系统指定 |
disabledbackground | 设置当Spinbox处于DISABLED状态下的背景颜色 |
disabledforeground | 设置当Spinbox处于DISABLED状态下的前景颜色 |
exportselection | 指定选中的文本是否可以被复制到剪贴板 默认值是True 可以修改为False表示不允许复制文本 |
font | 指定Spinbox中文本的字体 默认值由系统指定 |
foreground | 设置前景(文本)颜色 默认值由系统指定 |
fg | 跟foreground一样 |
format | 使用该选项设置选择数值的样式(from_和to指定范围,用户自行输入的不算) 例如使用format=’%10.4f’表示显示的数值占10位,小数点后保留4位 |
from_ | 该选项和to选项共同指定一个范围内的数值 |
increment | 选项设置每次点击调节箭头递增递减的精度 |
highlightbackground | 指定当Spinbox没有获得焦点的时候高亮边框的颜色 默认值由系统指定,通常是标准背景颜色 |
highlightcolor | 指定当Spinbox获得焦点的时候高亮边框的颜色 默认值由系统指定 |
highlightthickness | 指定高亮边框的宽度 |
increment | 该选项指定当用户每次点击调节箭头的时候递增递减的精度 例如from_=1, to=10, increment=0.5,那么每次用户点击调节箭头的时候,输入框中的数字递增递减0.5 |
insertbackground | 指定输入光标的颜色 |
insertborderwidth | 指定输入光标的边框高度 如果被设置为非0值,光标样式会被设置为RAISED 提示:将insertborderwidth设置的大一点才能看到效果 |
insertofftime | 该选项控制光标的闪烁频率(灭) 单位是毫秒 |
insertontime | 该选项控制光标的闪烁频率(亮) 单位是毫秒 |
insertwidth | 指定光标的宽度 默认值是1或2像素 |
invalidcommand | 指定当输入框的内容“非法”时调用的函数 也就是指定当validateCommand选项指定的函数返回False时的函数 详见Entry组件 |
invcmd | 跟invalidcommand一样 |
justify | 定义如何对齐多行文本 使用LEFT,RIGHT或CENTER 默认值是CENTER |
readonlybackground | 设置当Spinbox处于“readonly”状态下的背景颜色 |
relief | 指定边框样式 默认值是FLAT 另外你还可以设置SUNKEN,RAISED,GROOVE或RIDGE |
repeatdelay | 该选项指定鼠标左键点击滚动条凹槽的响应时间 默认值是400(毫秒) |
repeatinterval | 该选项指定鼠标左键紧按滚动条凹槽的响应间隔 默认值是100(毫秒) |
selectbackground | 指定输入框的文本被选中时的背景颜色 默认值由系统指定 |
state | Spinbox组件可以设置的状态:NORMAL,DISABLED或“readonly”(注意,这个是字符串。它跟DISABLED相似,但他支持选中和拷贝,只是不能修改,而DISABLED是完全禁止)默认值是NORMAL 注意,如果此选项设置为DISABLED或”readonly”,那么调用insert()和delete()方法都会被忽略 |
takefocus | 指定使用Tab键可以将焦点移动到输入框中 默认是开启的,可以将该选项设置为False避免焦点在此输入框中 |
textvariable | 指定一个与输入框内容相关联的Tkinter变量(通常是StringVar) 当输入框的内容发生改变时,该变量的值也会相应发生改变 |
to | 该选项和from_选项共同指定一个范围的数值 increment选项设置每次点击调节箭头递增递减的精度 |
validate | 该选项设置是否启用内容验证 |
validatecommand | 该选项指定一个验证函数,用于验证输入框内容是否合法 验证函数需要返回True或False表示验证结果 注意,该选项只有当validate的值非’none’时才有效 |
vcmd | 和validatecommand一样 |
values | 提供两个方法限定用户输入的内容,一种是通过from_和to选项设置范围,另一种则是将可选值以元组的形式赋给values选项 例如values=(“ds”, “sad”, “aesf”)则允许用户在这四个字符串中选择 width:设置输入框的宽度,以字符为单位 默认值是20 对于变宽字体来说,组件的实际宽度等于字体的平均宽度乘以width选项的值 |
wrap | 默认情况下(False),当输入框中的值是第一个(最后一个)的时候,再点击向上(向下)调节箭头,内容不会改变。 当该选项的值设置为True,则当输入框中的值是第一个(最后一个)的时候,再点击向上(向下)调节箭头,内容将回到最后一个(第一个)。 提示:其实就是开启循环的意思 |
xscrollcommand | 与scrollbar(滚动条)组件相关联 |
2 Spinbox组件
Spinbox 组件是 Entry 组件(能让用户随意的输入数据)的变体,用于从一些固定的值(可以是连续的,也可以是一些字符串的组合)中选取一个。
何时使用 Spinbox 组件?
Spinbox 组件通常用于在限定数字中选取的情况下替代普通的 Entry 组件。
注意:Spinbox 仅支持 Python3.2 和 Tk8.4 以上的版本
用法
Spinbox 组件跟 Entry 组件的用法非常相似,主要区别是使用 Spinbox 组件,你可以通过范围或者元组指定允许用户输入的内容。
看两个实例:
from tkinter import *
root = Tk()
w = Spinbox(root,from_=0,to=10)
w.pack()
mainloop()
输出:这里设置是1-10,也就是说在加到10或减到1都不会再往上或往下加或减了。
通过添加参数wrap=True,可以改变这个变化的是循环的,并且也可以给Spinbox的参数传递元组来改变值的变化。
如下所示:
from tkinter import *
root = Tk()
w = Spinbox(root,values=("Mondy","Tuesday","Wednesday","Thursday"),wrap=True)
w.pack()
mainloop()
效果图:
参数
Spinbox(master=None, **options)(class)
master–父组件
**options–组件选项,下面是各个选项的具体含义和用法:
选项 | 含义 |
---|---|
activebackground | 设置当Spinbox处于ACTIVE状态下的背景颜色 |
background | 设置背景颜色 默认值由系统指定 |
bg | 跟background一样 |
borderwidth | 设置边框宽度 默认值是1或2像素 |
buttonbackground | 设置调节箭头的背景颜色 |
buttoncursor | 指定当鼠标在调节箭头上方的鼠标样式 |
buttondownrelief | 指定向下调节箭头的样式 默认值是RAISED 还可以设置为FLAT,SUNKEN,GROOVE和RIDGE |
buttonup | 指定向上调节箭头的样式 默认值是RAISED 还可以设置为FLAT,SUNKEN,GROOVE和RIDGE |
command | 指定一个函数,当用户点击调节箭头的时候将自动调用该函数 注意:当用户直接在输入框中输入数据时并不会触发该函数 |
cursor | 指定当鼠标在Spinbox上飘过的时候的鼠标样式 默认值由系统指定 |
disabledbackground | 设置当Spinbox处于DISABLED状态下的背景颜色 |
disabledforeground | 设置当Spinbox处于DISABLED状态下的前景颜色 |
exportselection | 指定选中的文本是否可以被复制到剪贴板 默认值是True 可以修改为False表示不允许复制文本 |
font | 指定Spinbox中文本的字体 默认值由系统指定 |
foreground | 设置前景(文本)颜色 默认值由系统指定 |
fg | 跟foreground一样 |
format | 使用该选项设置选择数值的样式(from_和to指定范围,用户自行输入的不算) 例如使用format=’%10.4f’表示显示的数值占10位,小数点后保留4位 |
from_ | 该选项和to选项共同指定一个范围内的数值 increment选项设置每次点击调节箭头递增递减的精度 |
highlightbackground | 指定当Spinbox没有获得焦点的时候高亮边框的颜色 默认值由系统指定,通常是标准背景颜色 |
highlightcolor | 指定当Spinbox获得焦点的时候高亮边框的颜色 默认值由系统指定 |
highlightthickness | 指定高亮边框的宽度 |
increment | 该选项指定当用户每次点击调节箭头的时候递增递减的精度 例如from_=1, to=10, increment=0.5,那么每次用户点击调节箭头的时候,输入框中的数字递增递减0.5 |
insertbackground | 指定输入光标的颜色 |
insertborderwidth | 指定输入光标的边框高度 如果被设置为非0值,光标样式会被设置为RAISED 提示:将insertborderwidth设置的大一点才能看到效果 |
insertofftime | 该选项控制光标的闪烁频率(灭) 单位是毫秒 |
insertontime | 该选项控制光标的闪烁频率(亮) 单位是毫秒 |
insertwidth | 指定光标的宽度 默认值是1或2像素 |
invalidcommand | 指定当输入框的内容“非法”时调用的函数 也就是指定当validateCommand选项指定的函数返回False时的函数 详见Entry组件 |
invcmd | 跟invalidcommand一样 |
justify | 定义如何对齐多行文本 使用LEFT,RIGHT或CENTER 默认值是CENTER |
readonlybackground | 设置当Spinbox处于“readonly”状态下的背景颜色 |
relief | 指定边框样式 默认值是FLAT 另外你还可以设置SUNKEN,RAISED,GROOVE或RIDGE |
repeatdelay | 该选项指定鼠标左键点击滚动条凹槽的响应时间 默认值是400(毫秒) |
repeatinterval | 该选项指定鼠标左键紧按滚动条凹槽的响应间隔 默认值是100(毫秒) |
selectbackground | 指定输入框的文本被选中时的背景颜色 默认值由系统指定 |
state | Spinbox组件可以设置的状态:NORMAL,DISABLED或“readonly”(注意,这个是字符串。它跟DISABLED相似,但他支持选中和拷贝,只是不能修改,而DISABLED是完全禁止) 默认值是NORMAL 注意,如果此选项设置为DISABLED或”readonly”,那么调用insert()和delete()方法都会被忽略 |
takefocus | 指定使用Tab键可以将焦点移动到输入框中 默认是开启的,可以将该选项设置为False避免焦点在此输入框中 |
textvariable | 指定一个与输入框内容相关联的Tkinter变量(通常是StringVar) 当输入框的内容发生改变时,该变量的值也会相应发生改变 |
to | 该选项和from_选项共同指定一个范围的数值 increment选项设置每次点击调节箭头递增递减的精度 |
validate | 该选项设置是否启用内容验证 |
validatecommand | 该选项指定一个验证函数,用于验证输入框内容是否合法 验证函数需要返回True或False表示验证结果 注意,该选项只有当validate的值非’none’时才有效 |
vcmd | 和validatecommand一样 |
values | 提供两个方法限定用户输入的内容,一种是通过from_和to选项设置范围,另一种则是将可选值以元组的形式赋给values选项 例如values=(“ds”, “sad”, “aesf”)则允许用户在这四个字符串中选择 width:设置输入框的宽度,以字符为单位 默认值是20 对于变宽字体来说,组件的实际宽度等于字体的平均宽度乘以width选项的值 |
wrap | 默认情况下(False),当输入框中的值是第一个(最后一个)的时候,再点击向上(向下)调节箭头,内容不会改变。 当该选项的值设置为True,则当输入框中的值是第一个(最后一个)的时候,再点击向上(向下)调节箭头,内容将回到最后一个(第一个)。 提示:其实就是开启循环的意思 |
xscrollcommand | 与scrollbar(滚动条)组件相关联 如果你觉得用户输入的内容会超过该组件的输入框宽度,那么可以考虑设置该选项 |
标签:选项,Tkinter,设置,Python,Spinbox,指定,输入框,模块,默认值 来源: https://blog.csdn.net/qq_42711815/article/details/89246203