python tkiinter中滑块的使用
2023-12-13 17:33:51
需求:需要在Canvas组件上添加滑块功能
解决:使用tkinter提供的Scrollbar组件,由于没发现直接在画布上显示滑块功能的方法,所以后面采用在显示画布的容器上显示滑块,并绑定到画布上。
具体案例demo:
from tkinter import *
from PIL import ImageTk
from PIL import Image as img
canvas_width =600
canvas_height = 600
root = Tk()
root.geometry("950x650+350+20")
mybox = LabelFrame(root, padx=0, pady=0, width=600, height=600, bg="gray")
canvas = Canvas(mybox, width=canvas_width, height=canvas_height,bg="gray")
scrollbar_y = Scrollbar(mybox, orient=VERTICAL, command=canvas.yview)
scrollbar_x = Scrollbar(mybox, orient=HORIZONTAL, command=canvas.xview)
canvas.config(yscrollcommand=scrollbar_y.set)
scrollbar_y.pack(side="left", fill="y")
canvas.config(xscrollcommand=scrollbar_x.set)
scrollbar_x.pack(side="bottom", fill="x")
canvas.pack(side="left", expand=False)
mybox.pack()
# 在画布上画一张图片
img_open = img.open('./img/4b2aee566471a7e85884f975296e2128.jpeg') # 打开图片
photo = ImageTk.PhotoImage(img_open)
image = canvas.create_image(0, 0, anchor="nw", image=photo)
canvas.configure(scrollregion=canvas.bbox("all"))
# 设置滑块移动位置
canvas.yview_moveto(0.3)
root.mainloop()
效果:
文章来源:https://blog.csdn.net/m0_52604918/article/details/134976661
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!