小智 6
对于较慢的滚动,您可以使用 Canvas 的 xscrollincrement 和 yscrollincrement 选项:
from Tkinter import *
root = Tk()
c = Canvas(root, scrollregion=(0,0,500,500), height=200, width=200)
s = Scrollbar(root, command=c.yview)
c.pack(side=LEFT)
s.pack(side=RIGHT, fill=Y)
c.configure(yscrollcommand=s.set)
c.configure(yscrollincrement='2')
##yscrollincrement - increment for vertical scrolling, in pixels,
##millimeters '2m', centimeters '2c', or inches '2i'
c.create_rectangle(10,10,100,100)
c.create_rectangle(10,200,100,300)
def rollWheel(event):
direction = 0
if event.num == 5 or event.delta == -120:
direction = 1
if event.num == 4 or event.delta == 120:
direction = -1
event.widget.yview_scroll(direction, UNITS)
c.bind('<MouseWheel>', lambda event: rollWheel(event))
c.bind('<Button-4>', lambda event: rollWheel(event))
c.bind('<Button-5>', lambda event: rollWheel(event))
c.focus_set()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
查看 -xview/-yview 选项的文档,尤其是 yscrollincrement 选项。所以是的,您可以更改步长。
-yscroll增量
以屏幕距离允许的任何常用形式指定垂直滚动的增量。如果该选项的值大于零,窗口中的垂直视图将受到约束,使得窗口上边缘的画布 y 坐标始终为 yScrollIncrement 的偶数倍;此外,滚动的单位(例如,选择滚动条的顶部和底部箭头时视图的变化)也将是 yScrollIncrement。如果此选项的值小于或等于零,则垂直滚动不受限制。
和
yview滚动数是什么
该命令根据数字和内容向上或向下调整窗口中的视图。数字必须是整数。必须是单位或页。如果什么是单位,则视图以 yScrollIncrement 选项的单位向上或向下调整(如果它大于零),否则以窗口高度的十分之一为单位。如果是页面,则视图以窗口高度的十分之九为单位进行调整。如果数字为负数,则更高的信息变得可见;如果它是积极的,那么较低的信息就会变得可见。
来自canvas的 Tk 联机帮助页。
| 归档时间: |
|
| 查看次数: |
7922 次 |
| 最近记录: |