社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

【基础】学习笔记28-python3 tkinter GUI编程-实操10

Alyna_C • 4 年前 • 164 次点击  

>>进阶


Spinbox

界面:

初始界面


界面中的每个输入栏中的上下按钮均可使用,其中第四个输入栏没有初始显示值:


每个输入栏的步长不一,可自行设置。其中,步长可设置为整数,也可以为小数;可以等差,也可以自行设定步长间隔。

代码:

import tkinter as tk

win = tk.Tk()

win.geometry('300x200+200+200')

frame1 = tk.Frame(win)

frame2 = tk.Frame(win)

frame3 = tk.Frame(win)

frame4 = tk.Frame(win)

sb1 = tk.Spinbox(frame1,

bg='light blue',  # 背景色

fg='black',  # 字体色

bd=10,  # 框宽

from_=0,  # 最大值

to=10,  # 最小值

increment=2  # 步长

).pack()

sb2 = tk.Spinbox(frame1,

bg='pink',  # 背景色

bd=5,  # 框宽

values=(0, 2, 20, 40, 60)

).pack()

v = tk.StringVar()

sb3 = tk.Spinbox(frame1,

bg='light green',  # 背景色

values=(0, 2, 20, 40, 60),

increment=2,

textvariable=v  # 设置变量

)

v.set(20)

sb3.pack()

def printSpin():

sb4.insert(tk.END, '.00')  # 每项后添加.00表示精度

print(sb4.get())

sb4 = tk.Spinbox(frame1,

bg='lavender',  # 淡紫色

from_=0,

to=10,

command=printSpin  # 回调函数

)

sb4.pack()

# 每次点击按钮就会调用函数printSpin。不需要参数

sb4.delete(0)  # 删除指定位置数据,此处为不显示默认数据

frame1.grid(row=1, column=1, pady=5)

frame2.grid(row=2, column=1, pady=5)

frame3.grid(row=3, column=1, pady=5)

frame4.grid(row=4, column=1, pady=5)

win.mainloop()

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/99888
 
164 次点击