1062195630 发表于 2021-6-15 16:53:55

tkinter问题

from tkinter import *
root=Tk()
mylist=
sb=Scrollbar(root)
sb.pack(side=RIGHT,fill=Y)
thelist=Listbox(root,yscrollcommand=sb.set)
thelist.pack()
for j in mylist:
    thelist.insert(END,j)
Button(root,text='删除',command=lambda x=thelist:x.delete(ACTIVE)).pack(side=LEFT)

sb.config(command=thelist.yview)

mainloop()


发现没有sb.config(command=thelist.yview)也完美运行,config有什么作用呢

阿奇_o 发表于 2021-6-15 17:37:20

完美运行?删除操作的确正常,但没了sb.config(command=thelist.yview)这句,你的滚动条的功能就没了。

sb是什么?是Scrollbar(滚动条)的一个实例。sb.config()是配置滚动条的相关属性和动作。

sb.config(command=thelist.yview) 就是实现滚动条的功能。

1062195630 发表于 2021-6-15 18:39:35

阿奇_o 发表于 2021-6-15 17:37
完美运行?删除操作的确正常,但没了sb.config(command=thelist.yview)这句,你的滚动条的功能就没了。

...

C:\Users\liu\Desktop\QQPCRealTimeSpeedup_EEjYqStwSt.png

1062195630 发表于 2021-6-15 18:40:23

C:\Users\liu\Desktop\QQPCRealTimeSpeedup_EEjYqStwSt.png

1062195630 发表于 2021-6-15 18:40:58

阿奇_o 发表于 2021-6-15 17:37
完美运行?删除操作的确正常,但没了sb.config(command=thelist.yview)这句,你的滚动条的功能就没了。

...

不对啊,还是有的啊

Twilight6 发表于 2021-6-15 19:59:37



和 config 没有关系,config 的作用是添加或修改组件属性的

主要和 yview 的功能有关,代码去除后功能和没去除前感觉上一致,没有什么特殊变化

所以我去看了官方文档,如图:



机翻意思是:“查询或修改树视图的垂直位置。”

呃,可能需要再细致的查询些资料,暂时没明确弄清楚 yview 具体作用。

阿奇_o 发表于 2021-6-15 23:31:34

1062195630 发表于 2021-6-15 18:40
不对啊,还是有的啊

是有“看得见的滚动条”,但 滚动条应有的滚动功能没了{:10_312:}

ps: 我是完全复制你的代码,然后注释掉sb.config()这一行,
然后运行,试着滚动和拖动 滚动条,你会发现 内容动不了…… 这就是我说“滚动功能没了”的意思。

{:10_297:}

1062195630 发表于 2021-6-17 16:02:01

阿奇_o 发表于 2021-6-15 23:31
是有“看得见的滚动条”,但 滚动条应有的滚动功能没了

ps: 我是完全复制你的代码,然后 ...

000,谢谢,本来想设置你为最佳的,脑子一抽点错了

Twilight6 发表于 2021-6-17 16:10:35

1062195630 发表于 2021-6-17 16:02
000,谢谢,本来想设置你为最佳的,脑子一抽点错了



没事 我有权限可以改~

页: [1]
查看完整版本: tkinter问题