编程语言
首页 > 编程语言> > Python基础学习-Tkinter模块(八)

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