Python - 如何删除选定ListBox项目周围的边框?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python - 如何删除选定ListBox项目周围的边框?相关的知识,希望对你有一定的参考价值。
这是一个小问题,但我一直在下午的大部分时间都在苦苦挣扎,所以这里就是这样。我即将编写一个需要使用ScrolledListBox()的Python脚本。从来没有使用它,我开始用一个实验性的脚本,我可以玩它并熟悉它。我现在有脚本,我可以双击一个项目,并在处理程序中,正确打印所选项目到标准输出。但是,我注意到当选择项目时,无论是单击还是双击,列表中的项目周围都会出现一个矩形边框,并保持不变直到选中另一个项目。我一直试图看看是否有办法摆脱这个边界,但到目前为止一直无法这样做。这是我尝试过的:
1)感谢这个论坛中的另一篇文章,我发现keys()方法会给我一个窗口小部件的可用选项列表。因此,给定一个名为slb1的ScrolledListBox,我可以执行类似print(slb1.keys())的操作,并获得了我可以在窗口小部件上配置的所有内容的完整列表。其中一个是'selectborderwidth',所以我做了:slb1.configure(selectborderwidth = 0)认为这会删除边框。它没有。
2)接下来,我挖掘了我的“Python和Tkinter”副本并发现了selection_clear(first,last = None)方法。描述说明,“如果选择了第一个和最后一个(包括)之间的任何元素,则取消选择它们。”所以我尝试了处理程序中的slb1.selection_clear(0,None),但项目周围的矩形边框仍然存在。
我刚刚开始使用Python和Tkinter,所以希望我找不到有经验的人知道的东西。关于如何摆脱边界的任何想法?
谢谢,戴夫
使用Tkinter时,documentation by New Mexico Tech可以作为一个很好的参考,列出了Listbox
小部件的属性,其中包括activestyle
。此参数引用当前活动(不一定是选定的)项目周围的框,并且可以取值underline
,dotbox
和none
。
如果将activestyle
设置为none
,虚线边框将消失。
以上是关于Python - 如何删除选定ListBox项目周围的边框?的主要内容,如果未能解决你的问题,请参考以下文章
WPF绑定第二个ListBox与第一个ListBox中的选定项目相关
使用 listboxfor/listbox 进行多项选择,仅发布最后一个选定项目