Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Tkinter canvas.xview单位_Python_Scroll_Tkinter - Fatal编程技术网

Python Tkinter canvas.xview单位

Python Tkinter canvas.xview单位,python,scroll,tkinter,Python,Scroll,Tkinter,Tkinter画布滚动方法中的“单位”(单位)是如何定义的?它是以像素定义的吗?是否可以更改它(例如,对于较慢的滚动) 有关更好的上下文,请参阅代码 提前感谢。请查看-xview/-yview选项的文档,尤其是YSCROLINCREMENT选项。因此,可以更改步长 -YSCROLINcrement 以屏幕距离允许的任何常用形式指定垂直滚动的增量。如果此选项的值大于零,则窗口中的垂直视图将受到约束,以便窗口顶部边缘的画布y坐标始终是YSCROLINCREMENT的偶数倍;此外,用于滚动的单位(例如

Tkinter画布滚动方法中的“单位”(单位)是如何定义的?它是以像素定义的吗?是否可以更改它(例如,对于较慢的滚动)

有关更好的上下文,请参阅代码


提前感谢。

请查看-xview/-yview选项的文档,尤其是YSCROLINCREMENT选项。因此,可以更改步长

-YSCROLINcrement

以屏幕距离允许的任何常用形式指定垂直滚动的增量。如果此选项的值大于零,则窗口中的垂直视图将受到约束,以便窗口顶部边缘的画布y坐标始终是YSCROLINCREMENT的偶数倍;此外,用于滚动的单位(例如,当选择滚动条的顶部和底部箭头时视图中的变化)也将为YSCROLINCREMENT。如果此选项的值小于或等于零,则垂直滚动不受限制

查看卷轴号什么

此命令根据数字和内容向上或向下调整窗口中的视图。数字必须是整数。必须是单位或页面的内容。如果是单位,则视图将以YSCROLINCREMENT选项的单位向上或向下调整(如果大于零),否则将以窗口高度的十分之一为单位向上或向下调整。如果是什么页面,则视图以十分之九的窗口高度为单位进行调整。若数字为负数,则更高的信息可见;如果为正,则下部信息可见


从的Tk手册页中,对于较慢的滚动,您可以使用画布的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()
从Tkinter导入*
root=Tk()
c=画布(根,滚动区域=(0,0500500),高度=200,宽度=200)
s=滚动条(根,命令=c.yview)
c、 包装(侧面=左侧)
s、 包装(侧面=右侧,填充=Y)
c、 配置(yscrollcommand=s.set)
c、 配置(yscrolincrement='2')
##YSCROLINCREment-垂直滚动的增量,以像素为单位,
##毫米“2m”、厘米“2c”或英寸“2i”
c、 创建矩形(10,10100100)
c、 创建矩形(10200100300)
def滚轮(事件):
方向=0
如果event.num==5或event.delta==120:
方向=1
如果event.num==4或event.delta==120:
方向=-1
event.widget.yview\u滚动条(方向、单位)
c、 绑定(“”,lambda事件:滚轮(事件))
c、 绑定(“”,lambda事件:滚轮(事件))
c、 绑定(“”,lambda事件:滚轮(事件))
c、 焦点集()
root.mainloop()